@@ -4,6 +4,7 @@ use rustc_ast::tokenstream::TokenStream;
4
4
use rustc_errors:: ErrorGuaranteed ;
5
5
use rustc_middle:: ty;
6
6
use rustc_parse:: parser:: { ForceCollect , Parser } ;
7
+ use rustc_session:: Session ;
7
8
use rustc_session:: config:: ProcMacroExecutionStrategy ;
8
9
use rustc_span:: Span ;
9
10
use rustc_span:: profiling:: SpannedEventArgRecorder ;
@@ -32,9 +33,9 @@ impl<T> pm::bridge::server::MessagePipe<T> for MessagePipe<T> {
32
33
}
33
34
}
34
35
35
- pub fn exec_strategy ( ecx : & ExtCtxt < ' _ > ) -> impl pm:: bridge:: server:: ExecutionStrategy {
36
+ pub fn exec_strategy ( sess : & Session ) -> impl pm:: bridge:: server:: ExecutionStrategy {
36
37
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
38
39
== ProcMacroExecutionStrategy :: CrossThread ,
39
40
)
40
41
}
@@ -56,7 +57,7 @@ impl base::BangProcMacro for BangProcMacro {
56
57
} ) ;
57
58
58
59
let proc_macro_backtrace = ecx. ecfg . proc_macro_backtrace ;
59
- let strategy = exec_strategy ( ecx) ;
60
+ let strategy = exec_strategy ( ecx. sess ) ;
60
61
let server = proc_macro_server:: Rustc :: new ( ecx) ;
61
62
self . client . run ( & strategy, server, input, proc_macro_backtrace) . map_err ( |e| {
62
63
ecx. dcx ( ) . emit_err ( errors:: ProcMacroPanicked {
@@ -87,7 +88,7 @@ impl base::AttrProcMacro for AttrProcMacro {
87
88
} ) ;
88
89
89
90
let proc_macro_backtrace = ecx. ecfg . proc_macro_backtrace ;
90
- let strategy = exec_strategy ( ecx) ;
91
+ let strategy = exec_strategy ( ecx. sess ) ;
91
92
let server = proc_macro_server:: Rustc :: new ( ecx) ;
92
93
self . client . run ( & strategy, server, annotation, annotated, proc_macro_backtrace) . map_err (
93
94
|e| {
0 commit comments