diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2025-02-06 13:10:00 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-02-06 13:10:00 +0100 |
| commit | c9635e51b5e6d2e093bc13c5664a4501ecd7d540 (patch) | |
| tree | 55af078608393770ae4333cf469bebdc934a6771 /compiler/rustc_ty_utils/src | |
| parent | 85a9de5d51ae859c10a285857a7fb716c7ca4958 (diff) | |
| parent | 2f1669682cf4fe7eb83eb5818d0210f22dd3d0d9 (diff) | |
Rollup merge of #136435 - Zalathar:thir-pat-stuff, r=Nadrieril
Simplify some code for lowering THIR patterns I've been playing around with some radically different ways of storing THIR patterns, and while those experiments haven't yet produced a clear win, I have noticed various smaller things in the existing code that can be made a bit nicer. Some of the more significant changes: - With a little bit of extra effort (and thoughtful use of Arc), we can completely remove an entire layer of `'pat` lifetimes from the intermediate data structures used for match lowering. - In several places, lists of THIR patterns were being double-boxed for no apparent reason.
Diffstat (limited to 'compiler/rustc_ty_utils/src')
| -rw-r--r-- | compiler/rustc_ty_utils/src/consts.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/rustc_ty_utils/src/consts.rs b/compiler/rustc_ty_utils/src/consts.rs index 4038a1d68fa..cbe49d000b7 100644 --- a/compiler/rustc_ty_utils/src/consts.rs +++ b/compiler/rustc_ty_utils/src/consts.rs @@ -373,7 +373,8 @@ impl<'a, 'tcx> IsThirPolymorphic<'a, 'tcx> { match pat.kind { thir::PatKind::Constant { value } => value.has_non_region_param(), - thir::PatKind::Range(box thir::PatRange { lo, hi, .. }) => { + thir::PatKind::Range(ref range) => { + let &thir::PatRange { lo, hi, .. } = range.as_ref(); lo.has_non_region_param() || hi.has_non_region_param() } _ => false, |
