@@ -943,7 +943,7 @@ and transl_exp0 (e : Typedtree.expression) : Lambda.lambda =
943
943
[ targ ],
944
944
e.exp_loc )
945
945
| Record_unboxed _ -> targ
946
- | Record_extension ->
946
+ | Record_extension _ ->
947
947
Lprim
948
948
( Pfield
949
949
(lbl.lbl_pos + 1 , Lambda. fld_record_extension lbl),
@@ -958,7 +958,7 @@ and transl_exp0 (e : Typedtree.expression) : Lambda.lambda =
958
958
| Record_inlined _ ->
959
959
Psetfield (lbl.lbl_pos, Lambda. fld_record_inline_set lbl)
960
960
| Record_unboxed _ -> assert false
961
- | Record_extension ->
961
+ | Record_extension _ ->
962
962
Psetfield (lbl.lbl_pos + 1 , Lambda. fld_record_extension_set lbl)
963
963
in
964
964
Lprim (access, [ transl_exp arg; transl_exp newval ], e.exp_loc)
@@ -1212,7 +1212,7 @@ and transl_record loc env fields repres opt_init_expr =
1212
1212
| Record_inlined _ ->
1213
1213
Pfield (i, Lambda. fld_record_inline lbl)
1214
1214
| Record_unboxed _ -> assert false
1215
- | Record_extension ->
1215
+ | Record_extension _ ->
1216
1216
Pfield
1217
1217
(i + 1 , Lambda. fld_record_extension lbl)
1218
1218
in
@@ -1246,7 +1246,7 @@ and transl_record loc env fields repres opt_init_expr =
1246
1246
cl ))
1247
1247
| Record_unboxed _ ->
1248
1248
Lconst (match cl with [ v ] -> v | _ -> assert false )
1249
- | Record_extension -> raise Not_constant
1249
+ | Record_extension _ -> raise Not_constant
1250
1250
with Not_constant -> (
1251
1251
match repres with
1252
1252
| Record_regular ->
@@ -1269,7 +1269,7 @@ and transl_record loc env fields repres opt_init_expr =
1269
1269
loc )
1270
1270
| Record_unboxed _ -> (
1271
1271
match ll with [ v ] -> v | _ -> assert false )
1272
- | Record_extension ->
1272
+ | Record_extension { is_exception } ->
1273
1273
let path =
1274
1274
let label, _ = fields.(0 ) in
1275
1275
match label.lbl_res.desc with
@@ -1278,7 +1278,7 @@ and transl_record loc env fields repres opt_init_expr =
1278
1278
in
1279
1279
let slot = transl_extension_path env path in
1280
1280
Lprim
1281
- ( Pmakeblock (Lambda. blk_record_ext fields mut),
1281
+ ( Pmakeblock (Lambda. blk_record_ext fields mut is_exception ),
1282
1282
slot :: ll,
1283
1283
loc ))
1284
1284
in
@@ -1302,7 +1302,7 @@ and transl_record loc env fields repres opt_init_expr =
1302
1302
| Record_inlined _ ->
1303
1303
Psetfield (lbl.lbl_pos, Lambda. fld_record_inline_set lbl)
1304
1304
| Record_unboxed _ -> assert false
1305
- | Record_extension ->
1305
+ | Record_extension _ ->
1306
1306
Psetfield
1307
1307
(lbl.lbl_pos + 1 , Lambda. fld_record_extension_set lbl)
1308
1308
in
0 commit comments