about summary refs log tree commit diff
diff options
context:
space:
mode:
authorManish Goregaokar <manishsmail@gmail.com>2015-02-22 01:48:54 +0530
committerManish Goregaokar <manishsmail@gmail.com>2015-02-22 01:48:54 +0530
commitc90e854ec9ce6fb660ffb66fd723ba6186a0ab68 (patch)
tree27b4dd357ac356483d1ec67500ac21cc2fc5d60e
parent9fd45514b619e302d66a9d66a5b28d5dd1472528 (diff)
parent712a6870e91b9b2b971e63ed9c6a3f806ff97e46 (diff)
downloadrust-c90e854ec9ce6fb660ffb66fd723ba6186a0ab68.tar.gz
rust-c90e854ec9ce6fb660ffb66fd723ba6186a0ab68.zip
Rollup merge of #22614 - nick29581:fix-cc-crate, r=alexcrichton
 ... the post-analysis callback. We can also pass this to post-write-deps callback.

This fixes a really minor bug, which is basically about argument naming.

r? @alexcrichton
-rw-r--r--src/librustc_driver/driver.rs7
-rw-r--r--src/librustc_driver/lib.rs12
2 files changed, 12 insertions, 7 deletions
diff --git a/src/librustc_driver/driver.rs b/src/librustc_driver/driver.rs
index a260997f605..727c02a5a1b 100644
--- a/src/librustc_driver/driver.rs
+++ b/src/librustc_driver/driver.rs
@@ -112,6 +112,7 @@ pub fn compile_input(sess: Session,
                                                                      &sess,
                                                                      outdir,
                                                                      &ast_map,
+                                                                     &ast_map.krate(),
                                                                      &id[..]));
 
         let analysis = phase_3_run_analysis_passes(sess,
@@ -287,11 +288,13 @@ impl<'a, 'ast, 'tcx> CompileState<'a, 'ast, 'tcx> {
                               session: &'a Session,
                               out_dir: &'a Option<Path>,
                               ast_map: &'a ast_map::Map<'ast>,
+                              expanded_crate: &'a ast::Crate,
                               crate_name: &'a str)
                               -> CompileState<'a, 'ast, 'tcx> {
         CompileState {
             crate_name: Some(crate_name),
             ast_map: Some(ast_map),
+            expanded_crate: Some(expanded_crate),
             .. CompileState::empty(input, session, out_dir)
         }
     }
@@ -299,14 +302,14 @@ impl<'a, 'ast, 'tcx> CompileState<'a, 'ast, 'tcx> {
     fn state_after_analysis(input: &'a Input,
                             session: &'a Session,
                             out_dir: &'a Option<Path>,
-                            krate: &'a ast::Crate,
+                            expanded_crate: &'a ast::Crate,
                             analysis: &'a ty::CrateAnalysis<'tcx>,
                             tcx: &'a ty::ctxt<'tcx>)
                             -> CompileState<'a, 'ast, 'tcx> {
         CompileState {
             analysis: Some(analysis),
             tcx: Some(tcx),
-            krate: Some(krate),
+            expanded_crate: Some(expanded_crate),
             .. CompileState::empty(input, session, out_dir)
         }
     }
diff --git a/src/librustc_driver/lib.rs b/src/librustc_driver/lib.rs
index 2550432c810..e520e67c826 100644
--- a/src/librustc_driver/lib.rs
+++ b/src/librustc_driver/lib.rs
@@ -373,11 +373,13 @@ impl<'a> CompilerCalls<'a> for RustcDefaultCalls {
 
         if sess.opts.debugging_opts.save_analysis {
             control.after_analysis.callback = box |state| {
-                time(state.session.time_passes(), "save analysis", state.krate.unwrap(), |krate|
-                     save::process_crate(state.session,
-                                         krate,
-                                         state.analysis.unwrap(),
-                                         state.out_dir));
+                time(state.session.time_passes(),
+                     "save analysis",
+                     state.expanded_crate.unwrap(),
+                     |krate| save::process_crate(state.session,
+                                                 krate,
+                                                 state.analysis.unwrap(),
+                                                 state.out_dir));
             };
             control.make_glob_map = resolve::MakeGlobMap::Yes;
         }