File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -1936,6 +1936,22 @@ let trans_visitor
1936
1936
and get_drop_glue
1937
1937
(ty :Ast.ty )
1938
1938
: fixup =
1939
+
1940
+ (* obj and fn glue delegates to the body, so is always 'generic'. *)
1941
+ let ty =
1942
+ match ty with
1943
+ Ast. TY_obj _ -> Ast. TY_obj (Ast. LAYER_value , Hashtbl. create 0 )
1944
+ | Ast. TY_fn _ ->
1945
+ Ast. TY_fn ({ Ast. sig_input_slots = [| |];
1946
+ Ast. sig_input_constrs = [| |];
1947
+ Ast. sig_output_slot =
1948
+ { Ast. slot_mode = Ast. MODE_local ;
1949
+ Ast. slot_ty = Some Ast. TY_nil }; },
1950
+ { Ast. fn_is_iter = false ;
1951
+ Ast. fn_effect = Ast. EFF_pure })
1952
+ | _ -> ty
1953
+ in
1954
+
1939
1955
let g = GLUE_drop ty in
1940
1956
let inner _ (args :Il.cell ) =
1941
1957
let ty_params = deref (get_element_ptr args 0 ) in
You can’t perform that action at this time.
0 commit comments