about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--compiler/rustc_borrowck/src/type_check/liveness/trace.rs10
1 files 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 3d3b524f0eb..5702d39db32 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<Local>) {
         for local in boring_locals {
             let local_ty = self.cx.body.local_decls[local].ty;