about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/boot/me/trans.ml8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/boot/me/trans.ml b/src/boot/me/trans.ml
index b015ca6d1c7..7b89fc5a3b2 100644
--- a/src/boot/me/trans.ml
+++ b/src/boot/me/trans.ml
@@ -2883,11 +2883,13 @@ let trans_visitor
                   patch null_jmp;
                   note_drop_step ty "drop_ty: done box-drop path";
 
-            | MEM_interior when type_points_to_heap ty ->
-                note_drop_step ty "drop_ty heap-referencing path";
+            | MEM_interior
+                when type_points_to_heap ty || (n_used_type_params ty > 0) ->
+                note_drop_step ty "drop_ty possibly-heap-referencing path";
                 iter_ty_parts ty_params cell ty
                   (drop_ty ty_params) curr_iso;
-                note_drop_step ty "drop_ty: done heap-referencing path";
+                note_drop_step ty
+                  "drop_ty: done possibly-heap-referencing path";
 
 
             | MEM_interior ->