use rustc::middle::stability;
use rustc::ty::subst;
use rustc::ty::subst::Subst;
-use rustc::traits::ProjectionMode;
+use rustc::traits::Reveal;
use rustc::ty::{self, Ty, TyCtxt, TypeFoldable};
use rustc::infer::{self, InferOk, InferResult, TypeOrigin};
use rustc_metadata::cstore::CStore;
use syntax::abi::Abi;
use syntax::codemap::CodeMap;
use errors;
-use errors::emitter::{CoreEmitter, Emitter};
-use errors::{Level, RenderSpan};
+use errors::emitter::Emitter;
+use errors::{Level, DiagnosticBuilder};
use syntax::parse::token;
use syntax::feature_gate::UnstableFeatures;
use syntax_pos::DUMMY_SP;
}
}
-impl CoreEmitter for ExpectErrorEmitter {
- fn emit_message(&mut self,
- _sp: &RenderSpan,
- msg: &str,
- _: Option<&str>,
- lvl: Level,
- _is_header: bool,
- _show_snippet: bool) {
- remove_message(self, msg, lvl);
+impl Emitter for ExpectErrorEmitter {
+ fn emit(&mut self, db: &DiagnosticBuilder) {
+ remove_message(self, &db.message, db.level);
+ for child in &db.children {
+ remove_message(self, &child.message, child.level);
+ }
}
}
let dep_graph = DepGraph::new(false);
let _ignore = dep_graph.in_ignore();
- let cstore = Rc::new(CStore::new(&dep_graph, token::get_ident_interner()));
+ let cstore = Rc::new(CStore::new(&dep_graph));
let sess = session::build_session_(options, &dep_graph, None, diagnostic_handler,
Rc::new(CodeMap::new()), cstore.clone());
rustc_lint::register_builtins(&mut sess.lint_store.borrow_mut(), Some(&sess));
TyCtxt::create_and_enter(&sess,
&arenas,
resolutions.def_map,
+ resolutions.trait_map,
named_region_map.unwrap(),
ast_map,
resolutions.freevars,
index,
"test_crate",
|tcx| {
- tcx.infer_ctxt(None, None, ProjectionMode::AnyFinal).enter(|infcx| {
+ tcx.infer_ctxt(None, None, Reveal::NotSpecializable).enter(|infcx| {
body(Env { infcx: &infcx });
let free_regions = FreeRegionMap::new();
abi: Abi::Rust,
sig: ty::Binder(ty::FnSig {
inputs: input_args,
- output: ty::FnConverging(output_ty),
+ output: output_ty,
variadic: false,
}),
}))