Skip to content

Commit 434c27a

Browse files
committed
rustup: rustc-wrapper: Callbacks api changes
1 parent e0cd026 commit 434c27a

File tree

1 file changed

+14
-15
lines changed

1 file changed

+14
-15
lines changed

src/bin/mir-json-rustc-wrapper.rs

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,19 @@ extern crate rustc_metadata;
1010
extern crate getopts;
1111
extern crate rustc_ast;
1212
extern crate rustc_errors;
13+
extern crate rustc_middle;
1314
extern crate rustc_target;
1415
extern crate rustc_session;
1516

1617
extern crate mir_json;
1718

1819
use mir_json::analyz;
1920
use mir_json::link;
21+
use rustc_ast::Crate;
22+
use rustc_middle::ty::TyCtxt;
2023
use rustc_session::config::Externs;
2124
use rustc_driver::Compilation;
2225
use rustc_interface::interface::{Compiler, Config};
23-
use rustc_interface::Queries;
2426
use rustc_session::config::ExternLocation;
2527
use std::collections::HashSet;
2628
use std::env;
@@ -47,20 +49,18 @@ impl rustc_driver::Callbacks for GetOutputPathCallbacks {
4749
}
4850

4951
// RUSTUP_TODO: see mir-json.rs (already updated to fix some issues with Callbacks)
50-
fn after_parsing<'tcx>(
52+
fn after_crate_root_parsing<'tcx>(
5153
&mut self,
5254
compiler: &Compiler,
53-
queries: &'tcx Queries<'tcx>,
55+
krate: &mut Crate,
5456
) -> Compilation {
5557
// This phase runs with `--cfg crux`, so some `#[crux::test]` attrs may be visible. Even
5658
// the limited amount of compilation we do will fail without the injected `register_attr`.
57-
analyz::inject_attrs(queries);
59+
analyz::inject_attrs(krate);
5860

59-
let sess = compiler.session();
61+
let sess = compiler.sess;
6062
let (crate_name, outputs) = {
6163
// rustc_session::find_crate_name - get the crate with queries.expansion?
62-
let krate = queries.parse().unwrap();
63-
let krate = krate.borrow();
6464
let crate_name = rustc_session::output::find_crate_name(&sess, &krate.attrs);
6565
let outputs = compiler.build_output_filenames(&sess, &krate.attrs);
6666
(crate_name, outputs)
@@ -111,31 +111,30 @@ impl rustc_driver::Callbacks for MirJsonCallbacks {
111111
scrub_externs(&mut config.opts.externs, &self.use_override_crates);
112112
}
113113

114-
// RUSTUP_TODO: see mir-json.rs (already updated to fix some issues with Callbacks)
115-
fn after_parsing<'tcx>(
114+
fn after_crate_root_parsing<'tcx>(
116115
&mut self,
117116
_compiler: &Compiler,
118-
queries: &'tcx Queries<'tcx>,
117+
krate: &mut Crate,
119118
) -> Compilation {
120-
analyz::inject_attrs(queries);
119+
analyz::inject_attrs(krate);
121120
Compilation::Continue
122121
}
123122

124123
fn after_expansion<'tcx>(
125124
&mut self,
126125
_compiler: &Compiler,
127-
queries: &'tcx Queries<'tcx>,
126+
tcx: TyCtxt<'tcx>,
128127
) -> Compilation {
129-
analyz::gather_match_spans(queries);
128+
analyz::gather_match_spans(tcx);
130129
Compilation::Continue
131130
}
132131

133132
fn after_analysis<'tcx>(
134133
&mut self,
135134
compiler: &Compiler,
136-
queries: &'tcx Queries<'tcx>,
135+
tcx: TyCtxt<'tcx>,
137136
) -> Compilation {
138-
self.analysis_data = analyz::analyze(compiler.session(), queries, self.export_style).unwrap();
137+
self.analysis_data = analyz::analyze(&compiler.sess, tcx, self.export_style).unwrap();
139138
Compilation::Continue
140139
}
141140
}

0 commit comments

Comments
 (0)