diff options
| author | bors <bors@rust-lang.org> | 2024-01-12 11:29:06 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-01-12 11:29:06 +0000 |
| commit | 174e73a3f6df6f96ab453493796e461164dea94a (patch) | |
| tree | c32961a724a15c7a6ea68ef2003f97fef216af0c /compiler/rustc_pattern_analysis/src/rustc.rs | |
| parent | bfd799f1a5a86d16e6b8caa2857bcb4aac6e0174 (diff) | |
| parent | a24f4db41ba629a2477d6d332585faf5610c9210 (diff) | |
| download | rust-174e73a3f6df6f96ab453493796e461164dea94a.tar.gz rust-174e73a3f6df6f96ab453493796e461164dea94a.zip | |
Auto merge of #119396 - Nadrieril:intersection-tracking, r=WaffleLapkin
Exhaustiveness: track overlapping ranges precisely The `overlapping_range_endpoints` lint has false positives, e.g. https://github.com/rust-lang/rust/issues/117648. I expected that removing these false positives would have too much of a perf impact but never measured it. This PR is an experiment to see if the perf loss is manageable. r? `@ghost`
Diffstat (limited to 'compiler/rustc_pattern_analysis/src/rustc.rs')
| -rw-r--r-- | compiler/rustc_pattern_analysis/src/rustc.rs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_pattern_analysis/src/rustc.rs b/compiler/rustc_pattern_analysis/src/rustc.rs index a8d1bece613..a17cd2c81b9 100644 --- a/compiler/rustc_pattern_analysis/src/rustc.rs +++ b/compiler/rustc_pattern_analysis/src/rustc.rs @@ -34,6 +34,8 @@ pub type DeconstructedPat<'p, 'tcx> = crate::pat::DeconstructedPat<'p, RustcMatchCheckCtxt<'p, 'tcx>>; pub type MatchArm<'p, 'tcx> = crate::MatchArm<'p, RustcMatchCheckCtxt<'p, 'tcx>>; pub type MatchCtxt<'a, 'p, 'tcx> = crate::MatchCtxt<'a, 'p, RustcMatchCheckCtxt<'p, 'tcx>>; +pub type OverlappingRanges<'p, 'tcx> = + crate::usefulness::OverlappingRanges<'p, RustcMatchCheckCtxt<'p, 'tcx>>; pub(crate) type PlaceCtxt<'a, 'p, 'tcx> = crate::usefulness::PlaceCtxt<'a, 'p, RustcMatchCheckCtxt<'p, 'tcx>>; pub(crate) type SplitConstructorSet<'p, 'tcx> = |
