@@ -625,21 +625,6 @@ pub fn phase_2_configure_and_expand(sess: &Session,
625
625
ret
626
626
} ) ;
627
627
628
- // Needs to go *after* expansion to be able to check the results
629
- // of macro expansion. This runs before #[cfg] to try to catch as
630
- // much as possible (e.g. help the programmer avoid platform
631
- // specific differences)
632
- time ( time_passes, "complete gated feature checking 1" , || {
633
- sess. track_errors ( || {
634
- let features = syntax:: feature_gate:: check_crate ( sess. codemap ( ) ,
635
- & sess. parse_sess . span_diagnostic ,
636
- & krate,
637
- & attributes,
638
- sess. opts . unstable_features ) ;
639
- * sess. features . borrow_mut ( ) = features;
640
- } )
641
- } ) ?;
642
-
643
628
// JBC: make CFG processing part of expansion to avoid this problem:
644
629
645
630
// strip again, in case expansion added anything with a #[cfg].
@@ -662,6 +647,19 @@ pub fn phase_2_configure_and_expand(sess: &Session,
662
647
krate
663
648
} ) ?;
664
649
650
+ // Needs to go *after* expansion to be able to check the results
651
+ // of macro expansion.
652
+ time ( time_passes, "complete gated feature checking 1" , || {
653
+ sess. track_errors ( || {
654
+ let features = syntax:: feature_gate:: check_crate ( sess. codemap ( ) ,
655
+ & sess. parse_sess . span_diagnostic ,
656
+ & krate,
657
+ & attributes,
658
+ sess. opts . unstable_features ) ;
659
+ * sess. features . borrow_mut ( ) = features;
660
+ } )
661
+ } ) ?;
662
+
665
663
krate = time ( time_passes, "maybe building test harness" , || {
666
664
syntax:: test:: modify_for_testing ( & sess. parse_sess , & sess. opts . cfg , krate, sess. diagnostic ( ) )
667
665
} ) ;
0 commit comments