@@ -45,7 +45,7 @@ use crate::interface::Compiler;
45
45
use crate :: { errors, limits, proc_macro_decls, util} ;
46
46
47
47
pub fn parse < ' a > ( sess : & ' a Session ) -> ast:: Crate {
48
- let krate = sess
48
+ let mut krate = sess
49
49
. time ( "parse_crate" , || {
50
50
let mut parser = unwrap_or_emit_fatal ( match & sess. io . input {
51
51
Input :: File ( file) => new_parser_from_file ( & sess. psess , file, None ) ,
@@ -64,6 +64,12 @@ pub fn parse<'a>(sess: &'a Session) -> ast::Crate {
64
64
input_stats:: print_ast_stats ( & krate, "PRE EXPANSION AST STATS" , "ast-stats-1" ) ;
65
65
}
66
66
67
+ rustc_builtin_macros:: cmdline_attrs:: inject (
68
+ & mut krate,
69
+ & sess. psess ,
70
+ & sess. opts . unstable_opts . crate_attr ,
71
+ ) ;
72
+
67
73
krate
68
74
}
69
75
@@ -805,17 +811,11 @@ pub static DEFAULT_QUERY_PROVIDERS: LazyLock<Providers> = LazyLock::new(|| {
805
811
806
812
pub fn create_and_enter_global_ctxt < T , F : for < ' tcx > FnOnce ( TyCtxt < ' tcx > ) -> T > (
807
813
compiler : & Compiler ,
808
- mut krate : rustc_ast:: Crate ,
814
+ krate : rustc_ast:: Crate ,
809
815
f : F ,
810
816
) -> T {
811
817
let sess = & compiler. sess ;
812
818
813
- rustc_builtin_macros:: cmdline_attrs:: inject (
814
- & mut krate,
815
- & sess. psess ,
816
- & sess. opts . unstable_opts . crate_attr ,
817
- ) ;
818
-
819
819
let pre_configured_attrs = rustc_expand:: config:: pre_configure_attrs ( sess, & krate. attrs ) ;
820
820
821
821
let crate_name = get_crate_name ( sess, & pre_configured_attrs) ;
0 commit comments