diff --git a/bundled/bundle.ml b/bundled/bundle.ml index a29e8ec..625a785 100644 --- a/bundled/bundle.ml +++ b/bundled/bundle.ml @@ -162,7 +162,7 @@ let float version = if version < (4,07) then simple "Float" chain "Float" ["Array"; "ArrayLabels"] -let effect = chain "Effect" ["Deep"; "Shallow"] +let effekt = chain "Effect" ["Deep"; "Shallow"] let semaphore = chain "Semaphore" ["Binary"; "Counting"] let domain = chain "Domain" ["DLS"] @@ -179,7 +179,7 @@ let simple_stdlib v = Dict.of_list @@ @ in_between v (4,12) (5,0) [ simple "CamlinternalAtomic"] @ after v (4,14) [simple "In_channel"; simple "Out_channel"] @ before v (5,0) (List.map simple ["Stream";"Genlex"]) - @ after v (5,0) [semaphore; effect; domain; simple "Condition"; simple "Mutex"] + @ after v (5,0) [semaphore; effekt; domain; simple "Condition"; simple "Mutex"] @ after v (5,1) [chain "Type" ["Id"]] @ complex v @ simples diff --git a/lib/ast_converter.mlp b/lib/ast_converter.mlp index 96c04cc..7981b95 100644 --- a/lib/ast_converter.mlp +++ b/lib/ast_converter.mlp @@ -469,6 +469,10 @@ and pattern pat = | Ppat_open (m,p) (* M.(P) *) -> Pattern.open_ (with_loc m.loc @@ H.npath m) @@ pattern p #end +# 5.3, oo +| Ppat_effect (e, k) (* effect P, k *) -> + Pattern.( pattern e ++ pattern k) +#end and type_declaration td: M2l.Annot.t = Annot.union_map (fun (_,t,_) -> core_type t) td.ptype_cstrs