diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-07-20 07:13:45 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-20 07:13:45 +0200 |
| commit | cd8c5f78ec8140a8902747689c9d4b8080d7c66d (patch) | |
| tree | 0ef9a4eb81485a2bdb06e66cbe7693b23cead2da /compiler/rustc_pattern_analysis/src | |
| parent | 767b3cb54bb31a9f6d1ba52605f63528c493276d (diff) | |
| parent | aef0e346de744faeaa522b9c08562bb3e1814adc (diff) | |
Rollup merge of #127980 - nyurik:compiler-refs, r=oli-obk
Avoid ref when using format! in compiler
Clean up a few minor refs in `format!` macro, as it has a performance cost. Apparently the compiler is unable to inline `format!("{}", &variable)`, and does a run-time double-reference instead (format macro already does one level referencing). Inlining format args prevents accidental `&` misuse.
See also https://github.com/rust-lang/rust-clippy/issues/10851
Diffstat (limited to 'compiler/rustc_pattern_analysis/src')
| -rw-r--r-- | compiler/rustc_pattern_analysis/src/constructor.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/rustc_pattern_analysis/src/constructor.rs b/compiler/rustc_pattern_analysis/src/constructor.rs index fb103705475..f3e8e547066 100644 --- a/compiler/rustc_pattern_analysis/src/constructor.rs +++ b/compiler/rustc_pattern_analysis/src/constructor.rs @@ -904,7 +904,7 @@ impl<Cx: PatCx> Constructor<Cx> { // be careful to detect strings here. However a string literal pattern will never // be reported as a non-exhaustiveness witness, so we can ignore this issue. Ref => { - write!(f, "&{:?}", &fields.next().unwrap())?; + write!(f, "&{:?}", fields.next().unwrap())?; } Slice(slice) => { write!(f, "[")?; |
