This got removed at some point, it seems.
use hir::map::definitions::DefPathData;
use hir::def_id::{DefIndex, DefId};
use hir::def::{Def, PathResolution};
+use session::Session;
use std::collections::BTreeMap;
use std::iter;
}
}
-pub fn lower_crate(krate: &Crate, id_assigner: &NodeIdAssigner, resolver: &mut Resolver)
+pub fn lower_crate(sess: &Session,
+ krate: &Crate,
+ id_assigner: &NodeIdAssigner,
+ resolver: &mut Resolver)
-> hir::Crate {
+ // We're constructing the HIR here; we don't care what we will
+ // read, since we haven't even constructed the *input* to
+ // incr. comp. yet.
+ let _ignore = sess.dep_graph.in_ignore();
+
LoweringContext {
crate_root: if std_inject::no_core(krate) {
None
// Lower ast -> hir.
let hir_forest = time(sess.time_passes(), "lowering ast -> hir", || {
- hir_map::Forest::new(lower_crate(krate, sess, &mut resolver), dep_graph)
+ hir_map::Forest::new(lower_crate(sess, krate, sess, &mut resolver), dep_graph)
});
(ty::CrateAnalysis {
// reflects not just its contents but the results of name
// resolution on those contents. Hopefully we'll push this back at
// some point.
+ let _ignore = resolver.session.dep_graph.in_ignore();
resolver.build_reduced_graph(krate);
resolve_imports::resolve_imports(resolver);
let defs = hir_map::collect_definitions(&krate);
let mut dummy_resolver = DummyResolver;
- let krate = lower_crate(&krate, &sess, &mut dummy_resolver);
+ let krate = lower_crate(&sess, &krate, &sess, &mut dummy_resolver);
let opts = scrape_test_config(&krate);