Skip to content

Commit d6c2527

Browse files
committed
refactor: Require ecx less
1 parent de0fad9 commit d6c2527

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

compiler/rustc_expand/src/derive_macro_expansion.rs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,19 +18,23 @@ pub(super) fn provide_derive_macro_expansion<'tcx>(
1818

1919
let res = with_context(|(ecx, client)| {
2020
let span = invoc_id.expn_data().call_site;
21-
let _timer = ecx.sess.prof.generic_activity_with_arg_recorder(
21+
let _timer = tcx.sess.prof.generic_activity_with_arg_recorder(
2222
"expand_derive_proc_macro_inner",
2323
|recorder| {
24-
recorder.record_arg_with_span(ecx.sess.source_map(), ecx.expansion_descr(), span);
24+
recorder.record_arg_with_span(
25+
tcx.sess.source_map(),
26+
invoc_id.expn_data().kind.descr(),
27+
span,
28+
);
2529
},
2630
);
2731
let proc_macro_backtrace = ecx.ecfg.proc_macro_backtrace;
28-
let strategy = crate::proc_macro::exec_strategy(ecx);
32+
let strategy = crate::proc_macro::exec_strategy(tcx.sess);
2933
let server = crate::proc_macro_server::Rustc::new(ecx);
3034
let res = match client.run(&strategy, server, input.clone(), proc_macro_backtrace) {
3135
Ok(stream) => Ok(tcx.arena.alloc(stream) as &TokenStream),
3236
Err(e) => {
33-
ecx.dcx().emit_err({
37+
tcx.dcx().emit_err({
3438
errors::ProcMacroDerivePanicked {
3539
span,
3640
message: e.as_str().map(|message| errors::ProcMacroDerivePanickedHelp {

compiler/rustc_expand/src/proc_macro.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ use rustc_ast::tokenstream::TokenStream;
44
use rustc_errors::ErrorGuaranteed;
55
use rustc_middle::ty;
66
use rustc_parse::parser::{ForceCollect, Parser};
7+
use rustc_session::Session;
78
use rustc_session::config::ProcMacroExecutionStrategy;
89
use rustc_span::Span;
910
use rustc_span::profiling::SpannedEventArgRecorder;
@@ -32,9 +33,9 @@ impl<T> pm::bridge::server::MessagePipe<T> for MessagePipe<T> {
3233
}
3334
}
3435

35-
pub fn exec_strategy(ecx: &ExtCtxt<'_>) -> impl pm::bridge::server::ExecutionStrategy {
36+
pub fn exec_strategy(sess: &Session) -> impl pm::bridge::server::ExecutionStrategy {
3637
pm::bridge::server::MaybeCrossThread::<MessagePipe<_>>::new(
37-
ecx.sess.opts.unstable_opts.proc_macro_execution_strategy
38+
sess.opts.unstable_opts.proc_macro_execution_strategy
3839
== ProcMacroExecutionStrategy::CrossThread,
3940
)
4041
}
@@ -56,7 +57,7 @@ impl base::BangProcMacro for BangProcMacro {
5657
});
5758

5859
let proc_macro_backtrace = ecx.ecfg.proc_macro_backtrace;
59-
let strategy = exec_strategy(ecx);
60+
let strategy = exec_strategy(ecx.sess);
6061
let server = proc_macro_server::Rustc::new(ecx);
6162
self.client.run(&strategy, server, input, proc_macro_backtrace).map_err(|e| {
6263
ecx.dcx().emit_err(errors::ProcMacroPanicked {
@@ -87,7 +88,7 @@ impl base::AttrProcMacro for AttrProcMacro {
8788
});
8889

8990
let proc_macro_backtrace = ecx.ecfg.proc_macro_backtrace;
90-
let strategy = exec_strategy(ecx);
91+
let strategy = exec_strategy(ecx.sess);
9192
let server = proc_macro_server::Rustc::new(ecx);
9293
self.client.run(&strategy, server, annotation, annotated, proc_macro_backtrace).map_err(
9394
|e| {

0 commit comments

Comments
 (0)