From c390bda356905a2227591a1cf5cc49f618309ad6 Mon Sep 17 00:00:00 2001 From: Santiago Pastorino Date: Tue, 2 Aug 2022 15:06:12 -0300 Subject: [PATCH] Record RPITs elided lifetimes in Rptr Tys --- .../rustc_ast_lowering/src/lifetime_collector.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/compiler/rustc_ast_lowering/src/lifetime_collector.rs b/compiler/rustc_ast_lowering/src/lifetime_collector.rs index 51fa7075d345..4a7106f8da0a 100644 --- a/compiler/rustc_ast_lowering/src/lifetime_collector.rs +++ b/compiler/rustc_ast_lowering/src/lifetime_collector.rs @@ -64,6 +64,18 @@ impl<'ast> Visitor<'ast> for LifetimeCollectVisitor<'ast> { visit::walk_ty(self, t); self.current_binders.pop(); } + TyKind::Rptr(None, _) => { + if let Some(LifetimeRes::ElidedAnchor { start, end }) = + self.resolver.get_lifetime_res(t.id) + { + for i in start..end { + let lifetime = + Lifetime { id: i, ident: Ident::new(kw::UnderscoreLifetime, t.span) }; + self.record_lifetime_use(lifetime); + } + } + visit::walk_ty(self, t); + } _ => { visit::walk_ty(self, t); }