diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2024-02-06 22:45:40 +0100 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-02-06 22:45:40 +0100 | 
| commit | ce32d4862b4b50fcf7d1717033336e952839888a (patch) | |
| tree | 09eeb3d12d1cd33279c934a01ca85dc8bcbdd71d /compiler/rustc_pattern_analysis/src/usefulness.rs | |
| parent | 3c52832375ddb2a4ef1001eead5e49e7a91f7e04 (diff) | |
| parent | f65fe3ba59286710324abb9860667f1ecf805df9 (diff) | |
| download | rust-ce32d4862b4b50fcf7d1717033336e952839888a.tar.gz rust-ce32d4862b4b50fcf7d1717033336e952839888a.zip | |
Rollup merge of #120331 - Nadrieril:no-arena, r=compiler-errors
pattern_analysis: use a plain `Vec` in `DeconstructedPat` The use of an arena-allocated slice in `DeconstructedPat` dates to when we needed the arena anyway for lifetime reasons. Now that we don't, I'm thinking that if `thir::Pat` can use plain old `Vec`s, maybe so can I. r? ```@ghost```
Diffstat (limited to 'compiler/rustc_pattern_analysis/src/usefulness.rs')
| -rw-r--r-- | compiler/rustc_pattern_analysis/src/usefulness.rs | 4 | 
1 files changed, 2 insertions, 2 deletions
| diff --git a/compiler/rustc_pattern_analysis/src/usefulness.rs b/compiler/rustc_pattern_analysis/src/usefulness.rs index bbb68b353e4..33df4ebea43 100644 --- a/compiler/rustc_pattern_analysis/src/usefulness.rs +++ b/compiler/rustc_pattern_analysis/src/usefulness.rs @@ -848,7 +848,7 @@ impl<'p, Cx: TypeCx> Clone for PatStack<'p, Cx> { } impl<'p, Cx: TypeCx> PatStack<'p, Cx> { - fn from_pattern(pat: &'p DeconstructedPat<'p, Cx>) -> Self { + fn from_pattern(pat: &'p DeconstructedPat<Cx>) -> Self { PatStack { pats: smallvec![PatOrWild::Pat(pat)], relevant: true } } @@ -1575,7 +1575,7 @@ pub enum Usefulness<'p, Cx: TypeCx> { /// The arm is useful. This additionally carries a set of or-pattern branches that have been /// found to be redundant despite the overall arm being useful. Used only in the presence of /// or-patterns, otherwise it stays empty. - Useful(Vec<&'p DeconstructedPat<'p, Cx>>), + Useful(Vec<&'p DeconstructedPat<Cx>>), /// The arm is redundant and can be removed without changing the behavior of the match /// expression. Redundant, | 
