Skip to content

Commit

Permalink
Fix interaction of --no-analysis and --emit dep-info
Browse files Browse the repository at this point in the history
Closes #21130
  • Loading branch information
nrc committed Jan 14, 2015
1 parent 896cb36 commit 6f9e1a0
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 11 deletions.
22 changes: 22 additions & 0 deletions src/librustc_driver/driver.rs
Expand Up @@ -103,6 +103,13 @@ pub fn compile_input(sess: Session,

write_out_deps(&sess, input, &outputs, &id[]);

controller_entry_point!(after_write_deps,
CompileState::state_after_write_deps(input,
&sess,
outdir,
&ast_map,
&id[]));

let arenas = ty::CtxtArenas::new();
let analysis = phase_3_run_analysis_passes(sess,
ast_map,
Expand Down Expand Up @@ -176,6 +183,7 @@ pub fn source_name(input: &Input) -> String {
pub struct CompileController<'a> {
pub after_parse: PhaseController<'a>,
pub after_expand: PhaseController<'a>,
pub after_write_deps: PhaseController<'a>,
pub after_analysis: PhaseController<'a>,
pub after_llvm: PhaseController<'a>,

Expand All @@ -187,6 +195,7 @@ impl<'a> CompileController<'a> {
CompileController {
after_parse: PhaseController::basic(),
after_expand: PhaseController::basic(),
after_write_deps: PhaseController::basic(),
after_analysis: PhaseController::basic(),
after_llvm: PhaseController::basic(),
make_glob_map: resolve::MakeGlobMap::No,
Expand Down Expand Up @@ -271,6 +280,19 @@ impl<'a, 'ast, 'tcx> CompileState<'a, 'ast, 'tcx> {
}
}

fn state_after_write_deps(input: &'a Input,
session: &'a Session,
out_dir: &'a Option<Path>,
ast_map: &'a ast_map::Map<'ast>,
crate_name: &'a str)
-> CompileState<'a, 'ast, 'tcx> {
CompileState {
crate_name: Some(crate_name),
ast_map: Some(ast_map),
.. CompileState::empty(input, session, out_dir)
}
}

fn state_after_analysis(input: &'a Input,
session: &'a Session,
out_dir: &'a Option<Path>,
Expand Down
2 changes: 1 addition & 1 deletion src/librustc_driver/lib.rs
Expand Up @@ -207,7 +207,7 @@ fn build_controller<'a>(sess: &Session) -> CompileController<'a> {
}

if sess.opts.no_analysis || sess.opts.debugging_opts.ast_json {
control.after_expand.stop = true;
control.after_write_deps.stop = true;
}

if sess.opts.no_trans {
Expand Down
10 changes: 0 additions & 10 deletions src/librustc_driver/mod.rs

This file was deleted.

0 comments on commit 6f9e1a0

Please sign in to comment.