diff --git a/src/librustc/middle/borrowck/mod.rs b/src/librustc/middle/borrowck/mod.rs index c34f5c2f56b..68e205ebb6e 100644 --- a/src/librustc/middle/borrowck/mod.rs +++ b/src/librustc/middle/borrowck/mod.rs @@ -796,8 +796,9 @@ impl BorrowckCtxt { self.append_loan_path_to_str_from_interior(lp_base, out); match fname { mc::NamedField(ref fname) => { + let string = token::get_ident(*fname); out.push_char('.'); - out.push_str(token::interner_get(*fname)); + out.push_str(string.get()); } mc::PositionalField(idx) => { out.push_char('#'); // invent a notation here diff --git a/src/librustc/middle/mem_categorization.rs b/src/librustc/middle/mem_categorization.rs index ce1840283b2..d98cf9795b2 100644 --- a/src/librustc/middle/mem_categorization.rs +++ b/src/librustc/middle/mem_categorization.rs @@ -1233,7 +1233,10 @@ pub fn ptr_sigil(ptr: PointerKind) -> ~str { impl Repr for InteriorKind { fn repr(&self, _tcx: ty::ctxt) -> ~str { match *self { - InteriorField(NamedField(fld)) => token::interner_get(fld).to_owned(), + InteriorField(NamedField(fld)) => { + let string = token::get_ident(fld); + string.get().to_owned() + } InteriorField(PositionalField(i)) => format!("\\#{:?}", i), InteriorElement(_) => ~"[]", } diff --git a/src/librustc/middle/ty.rs b/src/librustc/middle/ty.rs index 93bfe9c51e1..066be142f24 100644 --- a/src/librustc/middle/ty.rs +++ b/src/librustc/middle/ty.rs @@ -3344,9 +3344,10 @@ pub fn field_idx_strict(tcx: ty::ctxt, name: ast::Name, fields: &[field]) -> uint { let mut i = 0u; for f in fields.iter() { if f.ident.name == name { return i; } i += 1u; } + let string = token::get_ident(name); tcx.sess.bug(format!( "No field named `{}` found in the list of fields `{:?}`", - token::interner_get(name), + string.get(), fields.map(|f| tcx.sess.str_of(f.ident)))); } diff --git a/src/librustc/middle/typeck/check/_match.rs b/src/librustc/middle/typeck/check/_match.rs index 9303bf80208..37862943dd7 100644 --- a/src/librustc/middle/typeck/check/_match.rs +++ b/src/librustc/middle/typeck/check/_match.rs @@ -339,9 +339,11 @@ pub fn check_struct_pat_fields(pcx: &pat_ctxt, if found_fields.contains(&i) { continue; } + + let string = token::get_ident(field.name); tcx.sess.span_err(span, format!("pattern does not mention field `{}`", - token::interner_get(field.name))); + string.get())); } } } diff --git a/src/librustc/middle/typeck/check/method.rs b/src/librustc/middle/typeck/check/method.rs index 398b4cca015..09d04753def 100644 --- a/src/librustc/middle/typeck/check/method.rs +++ b/src/librustc/middle/typeck/check/method.rs @@ -555,8 +555,10 @@ impl<'a> LookupContext<'a> { return; // already visited } } + + let method_name = token::get_ident(self.m_name); debug!("push_candidates_from_impl: {} {} {}", - token::interner_get(self.m_name), + method_name.get(), impl_info.ident.repr(self.tcx()), impl_info.methods.map(|m| m.ident).repr(self.tcx())); diff --git a/src/librustc/middle/typeck/check/mod.rs b/src/librustc/middle/typeck/check/mod.rs index 7e8fa4e6671..121b0486fb1 100644 --- a/src/librustc/middle/typeck/check/mod.rs +++ b/src/librustc/middle/typeck/check/mod.rs @@ -2335,9 +2335,11 @@ pub fn check_expr_with_unifier(fcx: @FnCtxt, fcx.type_error_message( expr.span, |actual| { + let string = token::get_ident(field); format!("attempted to take value of method `{}` on type `{}` \ - (try writing an anonymous function)", - token::interner_get(field), actual) + (try writing an anonymous function)", + string.get(), + actual) }, expr_t, None); } @@ -2346,9 +2348,11 @@ pub fn check_expr_with_unifier(fcx: @FnCtxt, fcx.type_error_message( expr.span, |actual| { + let string = token::get_ident(field); format!("attempted access of field `{}` on type `{}`, \ - but no field with that name was found", - token::interner_get(field), actual) + but no field with that name was found", + string.get(), + actual) }, expr_t, None); } @@ -2428,8 +2432,8 @@ pub fn check_expr_with_unifier(fcx: @FnCtxt, let name = class_field.name; let (_, seen) = *class_field_map.get(&name); if !seen { - missing_fields.push( - ~"`" + token::interner_get(name) + "`"); + let string = token::get_ident(name); + missing_fields.push(~"`" + string.get() + "`"); } }