@@ -232,6 +232,7 @@ let lam_prim ~primitive:(p : Lambda.primitive) ~args loc : Lam.t =
232232 | Pduprecord -> prim ~primitive: Pduprecord ~args loc
233233 | Plazyforce -> prim ~primitive: Plazyforce ~args loc
234234 | Praise _ -> prim ~primitive: Praise ~args loc
235+ | Pinfix _ -> assert false
235236 | Pobjcomp x -> prim ~primitive: (Pobjcomp x) ~args loc
236237 | Pobjorder -> prim ~primitive: Pobjorder ~args loc
237238 | Pobjmin -> prim ~primitive: Pobjmin ~args loc
@@ -475,6 +476,16 @@ let convert (exports : Set_ident.t) (lam : Lambda.lambda) :
475476 | Lprim (Pimport, args , loc ) ->
476477 let args = Ext_list. map args (convert_aux ~dynamic_import: true ) in
477478 lam_prim ~primitive: Pimport ~args loc
479+ | Lprim (Pinfix (Inf_custom (mod_ , op )), args , loc ) ->
480+ let fn = Lam. var (Ident. create_persistent op) in
481+ let args = Ext_list. map args (convert_aux ~dynamic_import ) in
482+ let ap_info : Lam.ap_info =
483+ {ap_loc = loc; ap_status = App_na ; ap_inlined = Lambda. Default_inline }
484+ in
485+ Lam. apply fn args ap_info
486+ | Lprim (Pinfix Inf_invariant, args , loc ) ->
487+ (* TODO : invariant *)
488+ assert false
478489 | Lprim (primitive , args , loc ) ->
479490 let args = Ext_list. map args (convert_aux ~dynamic_import ) in
480491 lam_prim ~primitive ~args loc
0 commit comments