This repository was archived by the owner on May 28, 2025. It is now read-only.
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 @@ -90,20 +90,20 @@ macro_rules! declare_passes {
9090 ) +
9191 ) *
9292
93- static PASS_NAMES : LazyLock <Vec < String >> = LazyLock :: new( || vec! [
93+ static PASS_NAMES : LazyLock <FxIndexSet < & str >> = LazyLock :: new( || [
9494 // Fake marker pass
95- "PreCodegen" . to_string ( ) ,
95+ "PreCodegen" ,
9696 $(
9797 $(
98- stringify!( $pass_name) . to_string ( ) ,
98+ stringify!( $pass_name) ,
9999 $(
100100 $(
101- $mod_name:: $pass_name:: $ident. name( ) . to_string ( ) ,
101+ $mod_name:: $pass_name:: $ident. name( ) ,
102102 ) *
103103 ) ?
104104 ) +
105105 ) *
106- ] ) ;
106+ ] . into_iter ( ) . collect ( ) ) ;
107107 } ;
108108}
109109
Original file line number Diff line number Diff line change @@ -200,9 +200,8 @@ 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
@@ -213,7 +212,7 @@ fn run_passes_inner<'tcx>(
213212 {
214213 let used_passes: FxIndexSet < _ > = passes. iter ( ) . map ( |p| p. name ( ) ) . collect ( ) ;
215214
216- let undeclared = used_passes. difference ( & known_passes ) . collect :: < Vec < _ > > ( ) ;
215+ let undeclared = used_passes. difference ( & * crate :: PASS_NAMES ) . collect :: < Vec < _ > > ( ) ;
217216 if let Some ( ( name, rest) ) = undeclared. split_first ( ) {
218217 let mut err =
219218 tcx. dcx ( ) . struct_bug ( format ! ( "pass `{name}` is not declared in `PASS_NAMES`" ) ) ;
You can’t perform that action at this time.
0 commit comments