File tree Expand file tree Collapse file tree 2 files changed +7
-8
lines changed
compiler/rustc_mir_transform/src Expand file tree Collapse file tree 2 files changed +7
-8
lines changed Original file line number Diff line number Diff line change @@ -68,20 +68,20 @@ macro_rules! declare_passes {
6868 ) +
6969 ) *
7070
71- static PASS_NAMES : LazyLock <Vec < String >> = LazyLock :: new( || vec! [
71+ static PASS_NAMES : LazyLock <FxIndexSet < & str >> = LazyLock :: new( || [
7272 // Fake marker pass
73- "PreCodegen" . to_string ( ) ,
73+ "PreCodegen" ,
7474 $(
7575 $(
76- stringify!( $pass_name) . to_string ( ) ,
76+ stringify!( $pass_name) ,
7777 $(
7878 $(
79- $mod_name:: $pass_name:: $ident. name( ) . to_string ( ) ,
79+ $mod_name:: $pass_name:: $ident. name( ) ,
8080 ) *
8181 ) ?
8282 ) +
8383 ) *
84- ] ) ;
84+ ] . into_iter ( ) . collect ( ) ) ;
8585 } ;
8686}
8787
Original file line number Diff line number Diff line change @@ -200,17 +200,16 @@ fn run_passes_inner<'tcx>(
200200
201201 let named_passes: FxIndexSet < _ > =
202202 overridden_passes. iter ( ) . map ( |( name, _) | name. as_str ( ) ) . collect ( ) ;
203- let known_passes: FxIndexSet < _ > = crate :: PASS_NAMES . iter ( ) . map ( |p| p. as_str ( ) ) . collect ( ) ;
204203
205- for & name in named_passes. difference ( & known_passes ) {
204+ for & name in named_passes. difference ( & * crate :: PASS_NAMES ) {
206205 tcx. dcx ( ) . emit_warn ( errors:: UnknownPassName { name } ) ;
207206 }
208207
209208 // Verify that no passes are missing from the `declare_passes` invocation
210209 #[ cfg( debug_assertions) ]
211210 {
212211 let used_passes: FxIndexSet < _ > = passes. iter ( ) . map ( |p| p. name ( ) ) . collect ( ) ;
213- for & name in used_passes. difference ( & known_passes ) {
212+ for & name in used_passes. difference ( & * crate :: PASS_NAMES ) {
214213 tcx. dcx ( ) . bug ( format ! ( "pass `{name}` is not declared in `PASS_NAMES`" ) ) ;
215214 }
216215 }
You can’t perform that action at this time.
0 commit comments