Recursively drop a type's parts if the type uses any typarams, since those typarams may represent types that actually require dropping.
This commit is contained in:
parent
cf62b54028
commit
5e5112dac6
1 changed files with 5 additions and 3 deletions
|
|
@ -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 ->
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue