]> git.lizzy.rs Git - rust.git/commitdiff
ignore dep-graph in resolve and lower_crate
authorNiko Matsakis <niko@alum.mit.edu>
Wed, 11 May 2016 00:50:00 +0000 (20:50 -0400)
committerNiko Matsakis <niko@alum.mit.edu>
Wed, 18 May 2016 14:11:35 +0000 (10:11 -0400)
This got removed at some point, it seems.

src/librustc/hir/lowering.rs
src/librustc_driver/driver.rs
src/librustc_resolve/lib.rs
src/librustdoc/test.rs

index 67ea7951de71967ff5234b6e560bbe1ea5f214c7..ba655b35eda151f75c209d3aa3323d8e3a922778 100644 (file)
@@ -45,6 +45,7 @@
 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;
@@ -97,8 +98,16 @@ fn definitions(&mut self) -> Option<&mut Definitions> {
     }
 }
 
-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
index da6af9140929ce4d76fba0a846a97abd3c7fd0f7..1d60c2eb43788b3d52217cbd02a4e42aa6ead598 100644 (file)
@@ -814,7 +814,7 @@ pub fn lower_and_resolve<'a>(sess: &Session,
 
         // 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 {
index 016dff5f0053940c3128fc61a0c59873e37732b8..61ed88ec173d4e2c8445afd482b72ccfe870f643 100644 (file)
@@ -3624,6 +3624,7 @@ pub fn resolve_crate<'a, 'b>(resolver: &'b mut Resolver<'a>, krate: &'b Crate) {
     // 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);
index bec18d2cc63f7d1636a9a1c36df68ebaa0a6ef39..2754f77444c67544a24cb442d09e0828a3c39f98 100644 (file)
@@ -101,7 +101,7 @@ pub fn run(input: &str,
     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);