diff options
| author | bors <bors@rust-lang.org> | 2025-10-02 08:09:33 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-10-02 08:09:33 +0000 |
| commit | 4b9c62b4da3e17cee99d3d2052f1c576b188e2a8 (patch) | |
| tree | b8500d73a15205e55e5cbc3d59f397d2547de007 /compiler/rustc_symbol_mangling/src | |
| parent | 42b384ec0dfcd528d99a4db0a337d9188a9eecaa (diff) | |
| parent | d1bbd39c59523d7a5499816a9da200a5910f8b7f (diff) | |
| download | rust-4b9c62b4da3e17cee99d3d2052f1c576b188e2a8.tar.gz rust-4b9c62b4da3e17cee99d3d2052f1c576b188e2a8.zip | |
Auto merge of #147138 - jackh726:split-canonical-bound, r=lcnr
Split Bound index into Canonical and Bound See [#t-types/trait-system-refactor > perf `async-closures/post-mono-higher-ranked-hang.rs`](https://rust-lang.zulipchat.com/#narrow/channel/364551-t-types.2Ftrait-system-refactor/topic/perf.20.60async-closures.2Fpost-mono-higher-ranked-hang.2Ers.60/with/541535613) for context Things compile and tests pass, but not sure if this actually solves the perf issue (edit: it does). Opening up this to do a perf (and maybe crater) run. r? lcnr
Diffstat (limited to 'compiler/rustc_symbol_mangling/src')
| -rw-r--r-- | compiler/rustc_symbol_mangling/src/v0.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/rustc_symbol_mangling/src/v0.rs b/compiler/rustc_symbol_mangling/src/v0.rs index d24924b424a..aeac40a65bd 100644 --- a/compiler/rustc_symbol_mangling/src/v0.rs +++ b/compiler/rustc_symbol_mangling/src/v0.rs @@ -413,7 +413,10 @@ impl<'tcx> Printer<'tcx> for V0SymbolMangler<'tcx> { // Bound lifetimes use indices starting at 1, // see `BinderLevel` for more details. - ty::ReBound(debruijn, ty::BoundRegion { var, kind: ty::BoundRegionKind::Anon }) => { + ty::ReBound( + ty::BoundVarIndexKind::Bound(debruijn), + ty::BoundRegion { var, kind: ty::BoundRegionKind::Anon }, + ) => { let binder = &self.binders[self.binders.len() - 1 - debruijn.index()]; let depth = binder.lifetime_depths.start + var.as_u32(); |
