From fc98c5a098ad6867fc257a21400649cfc8d4fea0 Mon Sep 17 00:00:00 2001 From: lcnr Date: Mon, 31 Jul 2023 12:47:24 +0200 Subject: [PATCH] update comment --- .../rustc_borrowck/src/type_check/liveness/trace.rs | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/compiler/rustc_borrowck/src/type_check/liveness/trace.rs b/compiler/rustc_borrowck/src/type_check/liveness/trace.rs index 3d3b524f0ebe..5702d39db32d 100644 --- a/compiler/rustc_borrowck/src/type_check/liveness/trace.rs +++ b/compiler/rustc_borrowck/src/type_check/liveness/trace.rs @@ -164,13 +164,9 @@ impl<'me, 'typeck, 'flow, 'tcx> LivenessResults<'me, 'typeck, 'flow, 'tcx> { /// Runs dropck for locals whose liveness isn't relevant. This is /// necessary to eagerly detect unbound recursion during drop glue computation. /// - /// These locals should not result in any liveness constraints given that they - /// should otherwise not be considered boring and get dropped. This is currently - /// not the case due to mismatches between `Ty::needs_drop` and `compute_drop_data`. - /// See #110288 and RFC 3417 for more details. - /// - /// FIXME: Assert that the returned liveness constraints are empty once these - /// inconsistencies are fixed. + /// These are all the locals which do not potentially reference a region local + /// to this body. Locals which only reference free regions are always drop-live + /// and can therefore safely be dropped. fn dropck_boring_locals(&mut self, boring_locals: Vec) { for local in boring_locals { let local_ty = self.cx.body.local_decls[local].ty;