diff options
| author | Jubilee Young <workingjubilee@gmail.com> | 2025-02-10 03:57:32 -0800 |
|---|---|---|
| committer | Jubilee Young <workingjubilee@gmail.com> | 2025-02-11 20:18:01 -0800 |
| commit | 8abff35b41b8de89da35ab851f931d6a582f7670 (patch) | |
| tree | 9fc31fe88da020be50493a9402cd87796cf35b33 /compiler/rustc_ast_lowering/src/stability.rs | |
| parent | 038c183d5f94b5ca3bed351374b01be4b1c90176 (diff) | |
| download | rust-8abff35b41b8de89da35ab851f931d6a582f7670.tar.gz rust-8abff35b41b8de89da35ab851f931d6a582f7670.zip | |
compiler: compare and hash ExternAbi like its string
Directly map each ExternAbi variant to its string and back again. This has a few advantages: - By making the ABIs compare equal to their strings, we can easily lexicographically sort them and use that sorted slice at runtime. - We no longer need a workaround to make sure the hashes remain stable, as they already naturally are (by being the hashes of unique strings). - The compiler can carry around less &str wide pointers
Diffstat (limited to 'compiler/rustc_ast_lowering/src/stability.rs')
| -rw-r--r-- | compiler/rustc_ast_lowering/src/stability.rs | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/compiler/rustc_ast_lowering/src/stability.rs b/compiler/rustc_ast_lowering/src/stability.rs index e7c166850a4..14410600fab 100644 --- a/compiler/rustc_ast_lowering/src/stability.rs +++ b/compiler/rustc_ast_lowering/src/stability.rs @@ -54,17 +54,12 @@ enum GateReason { impl fmt::Display for UnstableAbi { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { let Self { abi, .. } = self; - let name = abi.to_string(); - let name = name.trim_matches('"'); match self.explain { GateReason::Experimental => { - write!(f, r#"the extern "{name}" ABI is experimental and subject to change"#) + write!(f, "the extern {abi} ABI is experimental and subject to change") } GateReason::ImplDetail => { - write!( - f, - r#"the extern "{name}" ABI is an implementation detail and perma-unstable"# - ) + write!(f, "the extern {abi} ABI is an implementation detail and perma-unstable") } } } |
