diff options
author | Nicolas Pouillard <np@nicolaspouillard.fr> | 2010-06-16 10:57:39 +0000 |
---|---|---|
committer | Nicolas Pouillard <np@nicolaspouillard.fr> | 2010-06-16 10:57:39 +0000 |
commit | 22fb1dd8b29bc60fdea2bd34cb50b8242bb3daa0 (patch) | |
tree | 84068758a1ec33a24a34959e6e8f3bf1c72d7fb9 | |
parent | f8f85bbab8a1cf6aa9ebe68f27ab6cf7ca3c6d16 (diff) | |
download | ocaml-22fb1dd8b29bc60fdea2bd34cb50b8242bb3daa0.tar.gz |
Camlp4 Bootstrap
git-svn-id: http://caml.inria.fr/svn/ocaml/version/3.12@10580 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r-- | camlp4/boot/Camlp4.ml | 7270 | ||||
-rw-r--r-- | camlp4/boot/camlp4boot.ml | 3193 |
2 files changed, 5467 insertions, 4996 deletions
diff --git a/camlp4/boot/Camlp4.ml b/camlp4/boot/Camlp4.ml index 631a2461df..92daa282d8 100644 --- a/camlp4/boot/Camlp4.ml +++ b/camlp4/boot/Camlp4.ml @@ -3521,7 +3521,7 @@ module Struct = } let err error loc = - raise (Loc.Exc_located (loc, Error.E error)) + raise (Loc.Exc_located (loc, (Error.E error))) let keyword_conversion tok is_kwd = match tok with @@ -3877,7 +3877,8 @@ module Struct = pos_bol = pos.pos_cnum - chars; } - let err error loc = raise (Loc.Exc_located (loc, Error.E error)) + let err error loc = + raise (Loc.Exc_located (loc, (Error.E error))) let warn error loc = Format.eprintf "Warning: %a: %a@." Loc.print loc Error.print @@ -6469,7 +6470,7 @@ module Struct = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in - (try INT (int_of_string i, i) + (try INT ((int_of_string i), i) with | Failure _ -> err (Literal_overflow "int") (Loc.of_lexbuf lexbuf)) @@ -6478,7 +6479,7 @@ module Struct = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in - (try FLOAT (float_of_string f, f) + (try FLOAT ((float_of_string f), f) with | Failure _ -> err (Literal_overflow "float") @@ -6488,7 +6489,7 @@ module Struct = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos (lexbuf.Lexing.lex_curr_pos + (-1)) in - (try INT32 (Int32.of_string i, i) + (try INT32 ((Int32.of_string i), i) with | Failure _ -> err (Literal_overflow "int32") @@ -6498,7 +6499,7 @@ module Struct = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos (lexbuf.Lexing.lex_curr_pos + (-1)) in - (try INT64 (Int64.of_string i, i) + (try INT64 ((Int64.of_string i), i) with | Failure _ -> err (Literal_overflow "int64") @@ -6508,27 +6509,29 @@ module Struct = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos (lexbuf.Lexing.lex_curr_pos + (-1)) in - (try NATIVEINT (Nativeint.of_string i, i) + (try NATIVEINT ((Nativeint.of_string i), i) with | Failure _ -> err (Literal_overflow "nativeint") (Loc.of_lexbuf lexbuf)) | 11 -> (with_curr_loc string c; - let s = buff_contents c in STRING (TokenEval.string s, s)) + let s = buff_contents c + in STRING ((TokenEval.string s), s)) | 12 -> let x = Lexing.sub_lexeme lexbuf (lexbuf.Lexing.lex_start_pos + 1) (lexbuf.Lexing.lex_curr_pos + (-1)) in - (update_loc c None 1 false 1; CHAR (TokenEval.char x, x)) + (update_loc c None 1 false 1; + CHAR ((TokenEval.char x), x)) | 13 -> let x = Lexing.sub_lexeme lexbuf (lexbuf.Lexing.lex_start_pos + 1) (lexbuf.Lexing.lex_curr_pos + (-1)) - in CHAR (TokenEval.char x, x) + in CHAR ((TokenEval.char x), x) | 14 -> let c = Lexing.sub_lexeme_char lexbuf @@ -6820,7 +6823,7 @@ module Struct = and __ocaml_lex_antiquot_rec name c lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with - | 0 -> (set_start_p c; ANTIQUOT (name, buff_contents c)) + | 0 -> (set_start_p c; ANTIQUOT (name, (buff_contents c))) | 1 -> err Unterminated_antiquot (loc c) | 2 -> (update_loc c None 1 false 0; @@ -6957,9 +6960,9 @@ module Struct = let rec self = function | Ast.ExApp (_loc, e1, e2) -> - Ast.IdApp (_loc, self e1, self e2) + Ast.IdApp (_loc, (self e1), (self e2)) | Ast.ExAcc (_loc, e1, e2) -> - Ast.IdAcc (_loc, self e1, self e2) + Ast.IdAcc (_loc, (self e1), (self e2)) | Ast.ExId (_, (Ast.IdLid (_, _))) -> error () | Ast.ExId (_, i) -> if is_module_longident i then i else error () @@ -6976,7 +6979,7 @@ module Struct = let rec self = function | Ast.TyApp (_loc, t1, t2) -> - Ast.IdApp (_loc, self t1, self t2) + Ast.IdApp (_loc, (self t1), (self t2)) | Ast.TyId (_, (Ast.IdLid (_, _))) -> error () | Ast.TyId (_, i) -> if is_module_longident i then i else error () @@ -6990,7 +6993,7 @@ module Struct = let rec self = function | Ast.PaApp (_loc, p1, p2) -> - Ast.IdApp (_loc, self p1, self p2) + Ast.IdApp (_loc, (self p1), (self p2)) | Ast.PaId (_, (Ast.IdLid (_, _))) -> error () | Ast.PaId (_, i) -> if is_module_longident i then i else error () @@ -7057,7 +7060,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_ctyp t - in Ast.TyOr (_loc, t, tyOr_of_list ts) + in Ast.TyOr (_loc, t, (tyOr_of_list ts)) let rec tyAnd_of_list = function @@ -7065,7 +7068,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_ctyp t - in Ast.TyAnd (_loc, t, tyAnd_of_list ts) + in Ast.TyAnd (_loc, t, (tyAnd_of_list ts)) let rec tySem_of_list = function @@ -7073,7 +7076,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_ctyp t - in Ast.TySem (_loc, t, tySem_of_list ts) + in Ast.TySem (_loc, t, (tySem_of_list ts)) let rec tyCom_of_list = function @@ -7081,7 +7084,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_ctyp t - in Ast.TyCom (_loc, t, tyCom_of_list ts) + in Ast.TyCom (_loc, t, (tyCom_of_list ts)) let rec tyAmp_of_list = function @@ -7089,7 +7092,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_ctyp t - in Ast.TyAmp (_loc, t, tyAmp_of_list ts) + in Ast.TyAmp (_loc, t, (tyAmp_of_list ts)) let rec tySta_of_list = function @@ -7097,7 +7100,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_ctyp t - in Ast.TySta (_loc, t, tySta_of_list ts) + in Ast.TySta (_loc, t, (tySta_of_list ts)) let rec stSem_of_list = function @@ -7105,7 +7108,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_str_item t - in Ast.StSem (_loc, t, stSem_of_list ts) + in Ast.StSem (_loc, t, (stSem_of_list ts)) let rec sgSem_of_list = function @@ -7113,7 +7116,7 @@ module Struct = | [ t ] -> t | t :: ts -> let _loc = loc_of_sig_item t - in Ast.SgSem (_loc, t, sgSem_of_list ts) + in Ast.SgSem (_loc, t, (sgSem_of_list ts)) let rec biAnd_of_list = function @@ -7121,7 +7124,7 @@ module Struct = | [ b ] -> b | b :: bs -> let _loc = loc_of_binding b - in Ast.BiAnd (_loc, b, biAnd_of_list bs) + in Ast.BiAnd (_loc, b, (biAnd_of_list bs)) let rec rbSem_of_list = function @@ -7129,7 +7132,7 @@ module Struct = | [ b ] -> b | b :: bs -> let _loc = loc_of_rec_binding b - in Ast.RbSem (_loc, b, rbSem_of_list bs) + in Ast.RbSem (_loc, b, (rbSem_of_list bs)) let rec wcAnd_of_list = function @@ -7137,7 +7140,7 @@ module Struct = | [ w ] -> w | w :: ws -> let _loc = loc_of_with_constr w - in Ast.WcAnd (_loc, w, wcAnd_of_list ws) + in Ast.WcAnd (_loc, w, (wcAnd_of_list ws)) let rec idAcc_of_list = function @@ -7145,7 +7148,7 @@ module Struct = | [ i ] -> i | i :: is -> let _loc = loc_of_ident i - in Ast.IdAcc (_loc, i, idAcc_of_list is) + in Ast.IdAcc (_loc, i, (idAcc_of_list is)) let rec idApp_of_list = function @@ -7153,7 +7156,7 @@ module Struct = | [ i ] -> i | i :: is -> let _loc = loc_of_ident i - in Ast.IdApp (_loc, i, idApp_of_list is) + in Ast.IdApp (_loc, i, (idApp_of_list is)) let rec mcOr_of_list = function @@ -7161,7 +7164,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_match_case x - in Ast.McOr (_loc, x, mcOr_of_list xs) + in Ast.McOr (_loc, x, (mcOr_of_list xs)) let rec mbAnd_of_list = function @@ -7169,7 +7172,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_module_binding x - in Ast.MbAnd (_loc, x, mbAnd_of_list xs) + in Ast.MbAnd (_loc, x, (mbAnd_of_list xs)) let rec meApp_of_list = function @@ -7177,7 +7180,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_module_expr x - in Ast.MeApp (_loc, x, meApp_of_list xs) + in Ast.MeApp (_loc, x, (meApp_of_list xs)) let rec ceAnd_of_list = function @@ -7185,7 +7188,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_class_expr x - in Ast.CeAnd (_loc, x, ceAnd_of_list xs) + in Ast.CeAnd (_loc, x, (ceAnd_of_list xs)) let rec ctAnd_of_list = function @@ -7193,7 +7196,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_class_type x - in Ast.CtAnd (_loc, x, ctAnd_of_list xs) + in Ast.CtAnd (_loc, x, (ctAnd_of_list xs)) let rec cgSem_of_list = function @@ -7201,7 +7204,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_class_sig_item x - in Ast.CgSem (_loc, x, cgSem_of_list xs) + in Ast.CgSem (_loc, x, (cgSem_of_list xs)) let rec crSem_of_list = function @@ -7209,7 +7212,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_class_str_item x - in Ast.CrSem (_loc, x, crSem_of_list xs) + in Ast.CrSem (_loc, x, (crSem_of_list xs)) let rec paSem_of_list = function @@ -7217,7 +7220,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_patt x - in Ast.PaSem (_loc, x, paSem_of_list xs) + in Ast.PaSem (_loc, x, (paSem_of_list xs)) let rec paCom_of_list = function @@ -7225,7 +7228,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_patt x - in Ast.PaCom (_loc, x, paCom_of_list xs) + in Ast.PaCom (_loc, x, (paCom_of_list xs)) let rec exSem_of_list = function @@ -7233,7 +7236,7 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_expr x - in Ast.ExSem (_loc, x, exSem_of_list xs) + in Ast.ExSem (_loc, x, (exSem_of_list xs)) let rec exCom_of_list = function @@ -7241,22 +7244,23 @@ module Struct = | [ x ] -> x | x :: xs -> let _loc = loc_of_expr x - in Ast.ExCom (_loc, x, exCom_of_list xs) + in Ast.ExCom (_loc, x, (exCom_of_list xs)) let ty_of_stl = function - | (_loc, s, []) -> Ast.TyId (_loc, Ast.IdUid (_loc, s)) + | (_loc, s, []) -> Ast.TyId (_loc, (Ast.IdUid (_loc, s))) | (_loc, s, tl) -> - Ast.TyOf (_loc, Ast.TyId (_loc, Ast.IdUid (_loc, s)), - tyAnd_of_list tl) + Ast.TyOf (_loc, (Ast.TyId (_loc, (Ast.IdUid (_loc, s)))), + (tyAnd_of_list tl)) let ty_of_sbt = function | (_loc, s, true, t) -> - Ast.TyCol (_loc, Ast.TyId (_loc, Ast.IdLid (_loc, s)), - Ast.TyMut (_loc, t)) + Ast.TyCol (_loc, (Ast.TyId (_loc, (Ast.IdLid (_loc, s)))), + (Ast.TyMut (_loc, t))) | (_loc, s, false, t) -> - Ast.TyCol (_loc, Ast.TyId (_loc, Ast.IdLid (_loc, s)), t) + Ast.TyCol (_loc, (Ast.TyId (_loc, (Ast.IdLid (_loc, s)))), + t) let bi_of_pe (p, e) = let _loc = loc_of_patt p in Ast.BiEq (_loc, p, e) @@ -7396,57 +7400,71 @@ module Struct = let (a, b, c, d, e, f, g, h) = Loc.to_tuple location in Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"), - Ast.IdLid (_loc, "of_tuple"))), - Ast.PaTup (_loc, - Ast.PaCom (_loc, - Ast.PaStr (_loc, Ast.safe_string_escaped a), - Ast.PaCom (_loc, - Ast.PaCom (_loc, - Ast.PaCom (_loc, - Ast.PaCom (_loc, - Ast.PaCom (_loc, - Ast.PaCom (_loc, - Ast.PaInt (_loc, string_of_int b), - Ast.PaInt (_loc, string_of_int c)), - Ast.PaInt (_loc, string_of_int d)), - Ast.PaInt (_loc, string_of_int e)), - Ast.PaInt (_loc, string_of_int f)), - Ast.PaInt (_loc, string_of_int g)), - if h - then - Ast.PaId (_loc, Ast.IdUid (_loc, "True")) - else - Ast.PaId (_loc, Ast.IdUid (_loc, "False")))))) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Loc")), + (Ast.IdLid (_loc, "of_tuple")))))), + (Ast.PaTup (_loc, + (Ast.PaCom (_loc, + (Ast.PaStr (_loc, + (Ast.safe_string_escaped a))), + (Ast.PaCom (_loc, + (Ast.PaCom (_loc, + (Ast.PaCom (_loc, + (Ast.PaCom (_loc, + (Ast.PaCom (_loc, + (Ast.PaCom (_loc, + (Ast.PaInt (_loc, + (string_of_int b))), + (Ast.PaInt (_loc, + (string_of_int c))))), + (Ast.PaInt (_loc, + (string_of_int d))))), + (Ast.PaInt (_loc, + (string_of_int e))))), + (Ast.PaInt (_loc, (string_of_int f))))), + (Ast.PaInt (_loc, (string_of_int g))))), + (if h + then + Ast.PaId (_loc, + (Ast.IdUid (_loc, "True"))) + else + Ast.PaId (_loc, + (Ast.IdUid (_loc, "False"))))))))))) let meta_loc_expr _loc location = let (a, b, c, d, e, f, g, h) = Loc.to_tuple location in Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"), - Ast.IdLid (_loc, "of_tuple"))), - Ast.ExTup (_loc, - Ast.ExCom (_loc, - Ast.ExStr (_loc, Ast.safe_string_escaped a), - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExInt (_loc, string_of_int b), - Ast.ExInt (_loc, string_of_int c)), - Ast.ExInt (_loc, string_of_int d)), - Ast.ExInt (_loc, string_of_int e)), - Ast.ExInt (_loc, string_of_int f)), - Ast.ExInt (_loc, string_of_int g)), - if h - then - Ast.ExId (_loc, Ast.IdUid (_loc, "True")) - else - Ast.ExId (_loc, Ast.IdUid (_loc, "False")))))) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Loc")), + (Ast.IdLid (_loc, "of_tuple")))))), + (Ast.ExTup (_loc, + (Ast.ExCom (_loc, + (Ast.ExStr (_loc, + (Ast.safe_string_escaped a))), + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExInt (_loc, + (string_of_int b))), + (Ast.ExInt (_loc, + (string_of_int c))))), + (Ast.ExInt (_loc, + (string_of_int d))))), + (Ast.ExInt (_loc, + (string_of_int e))))), + (Ast.ExInt (_loc, (string_of_int f))))), + (Ast.ExInt (_loc, (string_of_int g))))), + (if h + then + Ast.ExId (_loc, + (Ast.IdUid (_loc, "True"))) + else + Ast.ExId (_loc, + (Ast.IdUid (_loc, "False"))))))))))) end @@ -7454,23 +7472,23 @@ module Struct = struct let meta_loc_patt _loc _ = Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"), - Ast.IdLid (_loc, "ghost"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Loc")), + (Ast.IdLid (_loc, "ghost"))))) let meta_loc_expr _loc _ = Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Loc"), - Ast.IdLid (_loc, "ghost"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Loc")), + (Ast.IdLid (_loc, "ghost"))))) end module MetaLocVar = struct let meta_loc_patt _loc _ = - Ast.PaId (_loc, Ast.IdLid (_loc, !Loc.name)) + Ast.PaId (_loc, (Ast.IdLid (_loc, !Loc.name))) let meta_loc_expr _loc _ = - Ast.ExId (_loc, Ast.IdLid (_loc, !Loc.name)) + Ast.ExId (_loc, (Ast.IdLid (_loc, !Loc.name))) end @@ -7493,2178 +7511,2274 @@ module Struct = let meta_bool _loc = function | false -> - Ast.ExId (_loc, Ast.IdUid (_loc, "False")) - | true -> Ast.ExId (_loc, Ast.IdUid (_loc, "True")) + Ast.ExId (_loc, (Ast.IdUid (_loc, "False"))) + | true -> + Ast.ExId (_loc, (Ast.IdUid (_loc, "True"))) let rec meta_list mf_a _loc = function - | [] -> Ast.ExId (_loc, Ast.IdUid (_loc, "[]")) + | [] -> Ast.ExId (_loc, (Ast.IdUid (_loc, "[]"))) | x :: xs -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - mf_a _loc x), - meta_list mf_a _loc xs) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), + (mf_a _loc x))), + (meta_list mf_a _loc xs)) let rec meta_binding _loc = function | Ast.BiAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.BiEq (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiEq"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiEq")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_expr _loc x2)) | Ast.BiAnd (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiAnd"))), - meta_loc _loc x0), - meta_binding _loc x1), - meta_binding _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiAnd")))))), + (meta_loc _loc x0))), + (meta_binding _loc x1))), + (meta_binding _loc x2)) | Ast.BiNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiNil")))))), + (meta_loc _loc x0)) and meta_class_expr _loc = function | Ast.CeAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.CeEq (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeEq"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_class_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeEq")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_class_expr _loc x2)) | Ast.CeAnd (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeAnd"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_class_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeAnd")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_class_expr _loc x2)) | Ast.CeTyc (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeTyc"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_class_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeTyc")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_class_type _loc x2)) | Ast.CeStr (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeStr"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_class_str_item _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeStr")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_class_str_item _loc x2)) | Ast.CeLet (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeLet"))), - meta_loc _loc x0), - meta_rec_flag _loc x1), - meta_binding _loc x2), - meta_class_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeLet")))))), + (meta_loc _loc x0))), + (meta_rec_flag _loc x1))), + (meta_binding _loc x2))), + (meta_class_expr _loc x3)) | Ast.CeFun (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeFun"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_class_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeFun")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_class_expr _loc x2)) | Ast.CeCon (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeCon"))), - meta_loc _loc x0), - meta_virtual_flag _loc x1), - meta_ident _loc x2), - meta_ctyp _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeCon")))))), + (meta_loc _loc x0))), + (meta_virtual_flag _loc x1))), + (meta_ident _loc x2))), + (meta_ctyp _loc x3)) | Ast.CeApp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeApp"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeApp")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_expr _loc x2)) | Ast.CeNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeNil")))))), + (meta_loc _loc x0)) and meta_class_sig_item _loc = function | Ast.CgAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.CgVir (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgVir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_private_flag _loc x2), - meta_ctyp _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgVir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_private_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CgVal (x0, x1, x2, x3, x4) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgVal"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_mutable_flag _loc x2), - meta_virtual_flag _loc x3), - meta_ctyp _loc x4) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgVal")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_mutable_flag _loc x2))), + (meta_virtual_flag _loc x3))), + (meta_ctyp _loc x4)) | Ast.CgMth (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgMth"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_private_flag _loc x2), - meta_ctyp _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgMth")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_private_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CgInh (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgInh"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgInh")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.CgSem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgSem"))), - meta_loc _loc x0), - meta_class_sig_item _loc x1), - meta_class_sig_item _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgSem")))))), + (meta_loc _loc x0))), + (meta_class_sig_item _loc x1))), + (meta_class_sig_item _loc x2)) | Ast.CgCtr (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgCtr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgCtr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.CgNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgNil")))))), + (meta_loc _loc x0)) and meta_class_str_item _loc = function | Ast.CrAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.CrVvr (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrVvr"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_mutable_flag _loc x2), - meta_ctyp _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrVvr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_mutable_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CrVir (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrVir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_private_flag _loc x2), - meta_ctyp _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrVir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_private_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CrVal (x0, x1, x2, x3, x4) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrVal"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_override_flag _loc x2), - meta_mutable_flag _loc x3), - meta_expr _loc x4) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrVal")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_override_flag _loc x2))), + (meta_mutable_flag _loc x3))), + (meta_expr _loc x4)) | Ast.CrMth (x0, x1, x2, x3, x4, x5) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrMth"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_override_flag _loc x2), - meta_private_flag _loc x3), - meta_expr _loc x4), - meta_ctyp _loc x5) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, + "CrMth")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_override_flag _loc x2))), + (meta_private_flag _loc x3))), + (meta_expr _loc x4))), + (meta_ctyp _loc x5)) | Ast.CrIni (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrIni"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrIni")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.CrInh (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrInh"))), - meta_loc _loc x0), - meta_override_flag _loc x1), - meta_class_expr _loc x2), - meta_string _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrInh")))))), + (meta_loc _loc x0))), + (meta_override_flag _loc x1))), + (meta_class_expr _loc x2))), + (meta_string _loc x3)) | Ast.CrCtr (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrCtr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrCtr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.CrSem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrSem"))), - meta_loc _loc x0), - meta_class_str_item _loc x1), - meta_class_str_item _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrSem")))))), + (meta_loc _loc x0))), + (meta_class_str_item _loc x1))), + (meta_class_str_item _loc x2)) | Ast.CrNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrNil")))))), + (meta_loc _loc x0)) and meta_class_type _loc = function | Ast.CtAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.CtEq (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtEq"))), - meta_loc _loc x0), - meta_class_type _loc x1), - meta_class_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtEq")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1))), + (meta_class_type _loc x2)) | Ast.CtCol (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtCol"))), - meta_loc _loc x0), - meta_class_type _loc x1), - meta_class_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtCol")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1))), + (meta_class_type _loc x2)) | Ast.CtAnd (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtAnd"))), - meta_loc _loc x0), - meta_class_type _loc x1), - meta_class_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtAnd")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1))), + (meta_class_type _loc x2)) | Ast.CtSig (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtSig"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_class_sig_item _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtSig")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_class_sig_item _loc x2)) | Ast.CtFun (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtFun"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_class_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtFun")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_class_type _loc x2)) | Ast.CtCon (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtCon"))), - meta_loc _loc x0), - meta_virtual_flag _loc x1), - meta_ident _loc x2), - meta_ctyp _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtCon")))))), + (meta_loc _loc x0))), + (meta_virtual_flag _loc x1))), + (meta_ident _loc x2))), + (meta_ctyp _loc x3)) | Ast.CtNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtNil")))))), + (meta_loc _loc x0)) and meta_ctyp _loc = function | Ast.TyAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.TyPkg (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyPkg"))), - meta_loc _loc x0), - meta_module_type _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyPkg")))))), + (meta_loc _loc x0))), + (meta_module_type _loc x1)) | Ast.TyOfAmp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOfAmp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOfAmp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyAmp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAmp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAmp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyVrnInfSup (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnInfSup"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnInfSup")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyVrnInf (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnInf"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnInf")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyVrnSup (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnSup"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnSup")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyVrnEq (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnEq"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnEq")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TySta (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TySta"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TySta")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyTup (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyTup"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyTup")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyMut (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyMut"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyMut")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyPrv (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyPrv"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyPrv")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyOr (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyAnd (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAnd"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAnd")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyOf (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOf"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOf")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TySum (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TySum"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TySum")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyCom (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyCom"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyCom")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TySem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TySem"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TySem")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyCol (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyCol"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyCol")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyRec (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyRec"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyRec")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyVrn (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrn"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrn")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyQuM (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyQuM"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyQuM")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyQuP (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyQuP"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyQuP")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyQuo (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyQuo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyQuo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyPol (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyPol"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyPol")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyOlb (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOlb"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOlb")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyObj (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyObj"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_row_var_flag _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyObj")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_row_var_flag _loc x2)) | Ast.TyDcl (x0, x1, x2, x3, x4) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyDcl"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_list meta_ctyp _loc x2), - meta_ctyp _loc x3), - meta_list - (fun _loc (x1, x2) -> - Ast.ExTup (_loc, - Ast.ExCom (_loc, meta_ctyp _loc x1, - meta_ctyp _loc x2))) - _loc x4) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyDcl")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_list meta_ctyp _loc x2))), + (meta_ctyp _loc x3))), + (meta_list + (fun _loc (x1, x2) -> + Ast.ExTup (_loc, + (Ast.ExCom (_loc, + (meta_ctyp _loc x1), + (meta_ctyp _loc x2))))) + _loc x4)) | Ast.TyMan (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyMan"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyMan")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyId (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.TyLab (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyLab"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyLab")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyCls (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyCls"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyCls")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.TyArr (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyArr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyArr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyApp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyApp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyApp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyAny x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAny"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAny")))))), + (meta_loc _loc x0)) | Ast.TyAli (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAli"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAli")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyNil")))))), + (meta_loc _loc x0)) and meta_direction_flag _loc = function | Ast.DiAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.DiDownto -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "DiDownto"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "DiDownto"))))) | Ast.DiTo -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "DiTo"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "DiTo"))))) and meta_expr _loc = function | Ast.ExPkg (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExPkg"))), - meta_loc _loc x0), - meta_module_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExPkg")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1)) | Ast.ExFUN (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFUN"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExFUN")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.ExOpI (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExOpI"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExOpI")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_expr _loc x2)) | Ast.ExWhi (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExWhi"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExWhi")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExVrn (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExVrn"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExVrn")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExTyc (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExTyc"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExTyc")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_ctyp _loc x2)) | Ast.ExCom (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExCom"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExCom")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExTup (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExTup"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExTup")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExTry (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExTry"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_match_case _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExTry")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_match_case _loc x2)) | Ast.ExStr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExStr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExStr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExSte (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSte"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSte")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExSnd (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSnd"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_string _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSnd")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_string _loc x2)) | Ast.ExSeq (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSeq"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSeq")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExRec (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExRec"))), - meta_loc _loc x0), - meta_rec_binding _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExRec")))))), + (meta_loc _loc x0))), + (meta_rec_binding _loc x1))), + (meta_expr _loc x2)) | Ast.ExOvr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExOvr"))), - meta_loc _loc x0), - meta_rec_binding _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExOvr")))))), + (meta_loc _loc x0))), + (meta_rec_binding _loc x1)) | Ast.ExOlb (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExOlb"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExOlb")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.ExObj (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExObj"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_class_str_item _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExObj")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_class_str_item _loc x2)) | Ast.ExNew (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExNew"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExNew")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.ExMat (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExMat"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_match_case _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExMat")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_match_case _loc x2)) | Ast.ExLmd (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLmd"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_expr _loc x2), - meta_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLmd")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_expr _loc x2))), + (meta_expr _loc x3)) | Ast.ExLet (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLet"))), - meta_loc _loc x0), - meta_rec_flag _loc x1), - meta_binding _loc x2), - meta_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLet")))))), + (meta_loc _loc x0))), + (meta_rec_flag _loc x1))), + (meta_binding _loc x2))), + (meta_expr _loc x3)) | Ast.ExLaz (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLaz"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLaz")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExLab (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLab"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLab")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.ExNativeInt (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExNativeInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExNativeInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExInt64 (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExInt64"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExInt64")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExInt32 (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExInt32"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExInt32")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExInt (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExIfe (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExIfe"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2), - meta_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExIfe")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2))), + (meta_expr _loc x3)) | Ast.ExFun (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFun"))), - meta_loc _loc x0), - meta_match_case _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExFun")))))), + (meta_loc _loc x0))), + (meta_match_case _loc x1)) | Ast.ExFor (x0, x1, x2, x3, x4, x5) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFor"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2), - meta_expr _loc x3), - meta_direction_flag _loc x4), - meta_expr _loc x5) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, + "ExFor")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2))), + (meta_expr _loc x3))), + (meta_direction_flag _loc x4))), + (meta_expr _loc x5)) | Ast.ExFlo (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFlo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExFlo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExCoe (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExCoe"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_ctyp _loc x2), - meta_ctyp _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExCoe")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_ctyp _loc x2))), + (meta_ctyp _loc x3)) | Ast.ExChr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExChr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExChr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExAss (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAss"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAss")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExAsr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAsr"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAsr")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExAsf x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAsf"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAsf")))))), + (meta_loc _loc x0)) | Ast.ExSem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSem"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSem")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExArr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExArr"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExArr")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExAre (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAre"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAre")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExApp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExApp"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExApp")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.ExAcc (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAcc"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAcc")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExId (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.ExNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExNil")))))), + (meta_loc _loc x0)) and meta_ident _loc = function | Ast.IdAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.IdUid (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdUid"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdUid")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.IdLid (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdLid"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdLid")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.IdApp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdApp"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdApp")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) | Ast.IdAcc (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdAcc"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdAcc")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) and meta_match_case _loc = function | Ast.McAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.McArr (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McArr"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_expr _loc x2), - meta_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McArr")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_expr _loc x2))), + (meta_expr _loc x3)) | Ast.McOr (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McOr"))), - meta_loc _loc x0), - meta_match_case _loc x1), - meta_match_case _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McOr")))))), + (meta_loc _loc x0))), + (meta_match_case _loc x1))), + (meta_match_case _loc x2)) | Ast.McNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McNil")))))), + (meta_loc _loc x0)) and meta_meta_bool _loc = function | Ast.BAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.BFalse -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BFalse"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BFalse"))))) | Ast.BTrue -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BTrue"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BTrue"))))) and meta_meta_list mf_a _loc = function | Ast.LAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.LCons (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "LCons"))), - mf_a _loc x0), - meta_meta_list mf_a _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "LCons")))))), + (mf_a _loc x0))), + (meta_meta_list mf_a _loc x1)) | Ast.LNil -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "LNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "LNil"))))) and meta_meta_option mf_a _loc = function | Ast.OAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.OSome x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "OSome"))), - mf_a _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "OSome")))))), + (mf_a _loc x0)) | Ast.ONone -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ONone"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ONone"))))) and meta_module_binding _loc = function | Ast.MbAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.MbCol (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbCol"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbCol")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.MbColEq (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbColEq"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2), - meta_module_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbColEq")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2))), + (meta_module_expr _loc x3)) | Ast.MbAnd (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbAnd"))), - meta_loc _loc x0), - meta_module_binding _loc x1), - meta_module_binding _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbAnd")))))), + (meta_loc _loc x0))), + (meta_module_binding _loc x1))), + (meta_module_binding _loc x2)) | Ast.MbNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbNil")))))), + (meta_loc _loc x0)) and meta_module_expr _loc = function | Ast.MeAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.MePkg (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MePkg"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MePkg")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.MeTyc (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeTyc"))), - meta_loc _loc x0), - meta_module_expr _loc x1), - meta_module_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeTyc")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1))), + (meta_module_type _loc x2)) | Ast.MeStr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeStr"))), - meta_loc _loc x0), - meta_str_item _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeStr")))))), + (meta_loc _loc x0))), + (meta_str_item _loc x1)) | Ast.MeFun (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeFun"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2), - meta_module_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeFun")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2))), + (meta_module_expr _loc x3)) | Ast.MeApp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeApp"))), - meta_loc _loc x0), - meta_module_expr _loc x1), - meta_module_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeApp")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1))), + (meta_module_expr _loc x2)) | Ast.MeId (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.MeNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeNil")))))), + (meta_loc _loc x0)) and meta_module_type _loc = function | Ast.MtAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.MtWit (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtWit"))), - meta_loc _loc x0), - meta_module_type _loc x1), - meta_with_constr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtWit")))))), + (meta_loc _loc x0))), + (meta_module_type _loc x1))), + (meta_with_constr _loc x2)) | Ast.MtSig (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtSig"))), - meta_loc _loc x0), - meta_sig_item _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtSig")))))), + (meta_loc _loc x0))), + (meta_sig_item _loc x1)) | Ast.MtQuo (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtQuo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtQuo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.MtFun (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtFun"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2), - meta_module_type _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtFun")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2))), + (meta_module_type _loc x3)) | Ast.MtId (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.MtNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtNil")))))), + (meta_loc _loc x0)) and meta_mutable_flag _loc = function | Ast.MuAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.MuNil -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MuNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MuNil"))))) | Ast.MuMutable -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MuMutable"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MuMutable"))))) and meta_override_flag _loc = function | Ast.OvAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.OvNil -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "OvNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "OvNil"))))) | Ast.OvOverride -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "OvOverride"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "OvOverride"))))) and meta_patt _loc = function | Ast.PaLaz (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaLaz"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaLaz")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaVrn (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaVrn"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaVrn")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaTyp (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaTyp"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaTyp")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.PaTyc (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaTyc"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaTyc")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_ctyp _loc x2)) | Ast.PaTup (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaTup"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaTup")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaStr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaStr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaStr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaEq (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaEq"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaEq")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_patt _loc x2)) | Ast.PaRec (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaRec"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaRec")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaRng (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaRng"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaRng")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaOrp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaOrp"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaOrp")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaOlbi (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaOlbi"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_patt _loc x2), - meta_expr _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaOlbi")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_patt _loc x2))), + (meta_expr _loc x3)) | Ast.PaOlb (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaOlb"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaOlb")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_patt _loc x2)) | Ast.PaLab (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaLab"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaLab")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_patt _loc x2)) | Ast.PaFlo (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaFlo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaFlo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaNativeInt (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaNativeInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaNativeInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaInt64 (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaInt64"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaInt64")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaInt32 (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaInt32"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaInt32")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaInt (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaChr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaChr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaChr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaSem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaSem"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaSem")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaCom (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaCom"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaCom")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaArr (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaArr"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaArr")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaApp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaApp"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaApp")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaAny x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaAny"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaAny")))))), + (meta_loc _loc x0)) | Ast.PaAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.PaAli (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaAli"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaAli")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaId (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.PaNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaNil")))))), + (meta_loc _loc x0)) and meta_private_flag _loc = function | Ast.PrAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.PrNil -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PrNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PrNil"))))) | Ast.PrPrivate -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PrPrivate"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PrPrivate"))))) and meta_rec_binding _loc = function | Ast.RbAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.RbEq (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbEq"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbEq")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_expr _loc x2)) | Ast.RbSem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbSem"))), - meta_loc _loc x0), - meta_rec_binding _loc x1), - meta_rec_binding _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbSem")))))), + (meta_loc _loc x0))), + (meta_rec_binding _loc x1))), + (meta_rec_binding _loc x2)) | Ast.RbNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbNil")))))), + (meta_loc _loc x0)) and meta_rec_flag _loc = function | Ast.ReAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.ReNil -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ReNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ReNil"))))) | Ast.ReRecursive -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ReRecursive"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ReRecursive"))))) and meta_row_var_flag _loc = function | Ast.RvAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.RvNil -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RvNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RvNil"))))) | Ast.RvRowVar -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RvRowVar"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RvRowVar"))))) and meta_sig_item _loc = function | Ast.SgAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.SgVal (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgVal"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgVal")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2)) | Ast.SgTyp (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgTyp"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgTyp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.SgOpn (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgOpn"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgOpn")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.SgMty (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgMty"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgMty")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.SgRecMod (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgRecMod"))), - meta_loc _loc x0), - meta_module_binding _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgRecMod")))))), + (meta_loc _loc x0))), + (meta_module_binding _loc x1)) | Ast.SgMod (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgMod"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgMod")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.SgInc (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgInc"))), - meta_loc _loc x0), - meta_module_type _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgInc")))))), + (meta_loc _loc x0))), + (meta_module_type _loc x1)) | Ast.SgExt (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgExt"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2), - meta_meta_list meta_string _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgExt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2))), + (meta_meta_list meta_string _loc x3)) | Ast.SgExc (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgExc"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgExc")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.SgDir (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgDir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgDir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.SgSem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgSem"))), - meta_loc _loc x0), - meta_sig_item _loc x1), - meta_sig_item _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgSem")))))), + (meta_loc _loc x0))), + (meta_sig_item _loc x1))), + (meta_sig_item _loc x2)) | Ast.SgClt (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgClt"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgClt")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.SgCls (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgCls"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgCls")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.SgNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgNil")))))), + (meta_loc _loc x0)) and meta_str_item _loc = function | Ast.StAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.StVal (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StVal"))), - meta_loc _loc x0), - meta_rec_flag _loc x1), - meta_binding _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StVal")))))), + (meta_loc _loc x0))), + (meta_rec_flag _loc x1))), + (meta_binding _loc x2)) | Ast.StTyp (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StTyp"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StTyp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.StOpn (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StOpn"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StOpn")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.StMty (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StMty"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StMty")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.StRecMod (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StRecMod"))), - meta_loc _loc x0), - meta_module_binding _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StRecMod")))))), + (meta_loc _loc x0))), + (meta_module_binding _loc x1)) | Ast.StMod (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StMod"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StMod")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_expr _loc x2)) | Ast.StInc (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StInc"))), - meta_loc _loc x0), - meta_module_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StInc")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1)) | Ast.StExt (x0, x1, x2, x3) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StExt"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2), - meta_meta_list meta_string _loc x3) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StExt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2))), + (meta_meta_list meta_string _loc x3)) | Ast.StExp (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StExp"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StExp")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.StExc (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StExc"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_meta_option meta_ident _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StExc")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_meta_option meta_ident _loc x2)) | Ast.StDir (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StDir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StDir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.StSem (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StSem"))), - meta_loc _loc x0), - meta_str_item _loc x1), - meta_str_item _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StSem")))))), + (meta_loc _loc x0))), + (meta_str_item _loc x1))), + (meta_str_item _loc x2)) | Ast.StClt (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StClt"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StClt")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.StCls (x0, x1) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StCls"))), - meta_loc _loc x0), - meta_class_expr _loc x1) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StCls")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1)) | Ast.StNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StNil")))))), + (meta_loc _loc x0)) and meta_virtual_flag _loc = function | Ast.ViAnt x0 -> Ast.ExAnt (_loc, x0) | Ast.ViNil -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ViNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ViNil"))))) | Ast.ViVirtual -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ViVirtual"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ViVirtual"))))) and meta_with_constr _loc = function | Ast.WcAnt (x0, x1) -> Ast.ExAnt (x0, x1) | Ast.WcAnd (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcAnd"))), - meta_loc _loc x0), - meta_with_constr _loc x1), - meta_with_constr _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcAnd")))))), + (meta_loc _loc x0))), + (meta_with_constr _loc x1))), + (meta_with_constr _loc x2)) | Ast.WcMoS (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcMoS"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcMoS")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) | Ast.WcTyS (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcTyS"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcTyS")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.WcMod (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcMod"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcMod")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) | Ast.WcTyp (x0, x1, x2) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcTyp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcTyp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.WcNil x0 -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcNil"))), - meta_loc _loc x0) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcNil")))))), + (meta_loc _loc x0)) end @@ -9683,2178 +9797,2274 @@ module Struct = let meta_bool _loc = function | false -> - Ast.PaId (_loc, Ast.IdUid (_loc, "False")) - | true -> Ast.PaId (_loc, Ast.IdUid (_loc, "True")) + Ast.PaId (_loc, (Ast.IdUid (_loc, "False"))) + | true -> + Ast.PaId (_loc, (Ast.IdUid (_loc, "True"))) let rec meta_list mf_a _loc = function - | [] -> Ast.PaId (_loc, Ast.IdUid (_loc, "[]")) + | [] -> Ast.PaId (_loc, (Ast.IdUid (_loc, "[]"))) | x :: xs -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "::")), - mf_a _loc x), - meta_list mf_a _loc xs) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, (Ast.IdUid (_loc, "::")))), + (mf_a _loc x))), + (meta_list mf_a _loc xs)) let rec meta_binding _loc = function | Ast.BiAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.BiEq (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiEq"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiEq")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_expr _loc x2)) | Ast.BiAnd (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiAnd"))), - meta_loc _loc x0), - meta_binding _loc x1), - meta_binding _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiAnd")))))), + (meta_loc _loc x0))), + (meta_binding _loc x1))), + (meta_binding _loc x2)) | Ast.BiNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiNil")))))), + (meta_loc _loc x0)) and meta_class_expr _loc = function | Ast.CeAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.CeEq (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeEq"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_class_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeEq")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_class_expr _loc x2)) | Ast.CeAnd (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeAnd"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_class_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeAnd")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_class_expr _loc x2)) | Ast.CeTyc (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeTyc"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_class_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeTyc")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_class_type _loc x2)) | Ast.CeStr (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeStr"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_class_str_item _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeStr")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_class_str_item _loc x2)) | Ast.CeLet (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeLet"))), - meta_loc _loc x0), - meta_rec_flag _loc x1), - meta_binding _loc x2), - meta_class_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeLet")))))), + (meta_loc _loc x0))), + (meta_rec_flag _loc x1))), + (meta_binding _loc x2))), + (meta_class_expr _loc x3)) | Ast.CeFun (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeFun"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_class_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeFun")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_class_expr _loc x2)) | Ast.CeCon (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeCon"))), - meta_loc _loc x0), - meta_virtual_flag _loc x1), - meta_ident _loc x2), - meta_ctyp _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeCon")))))), + (meta_loc _loc x0))), + (meta_virtual_flag _loc x1))), + (meta_ident _loc x2))), + (meta_ctyp _loc x3)) | Ast.CeApp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeApp"))), - meta_loc _loc x0), - meta_class_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeApp")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1))), + (meta_expr _loc x2)) | Ast.CeNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeNil")))))), + (meta_loc _loc x0)) and meta_class_sig_item _loc = function | Ast.CgAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.CgVir (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgVir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_private_flag _loc x2), - meta_ctyp _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgVir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_private_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CgVal (x0, x1, x2, x3, x4) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgVal"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_mutable_flag _loc x2), - meta_virtual_flag _loc x3), - meta_ctyp _loc x4) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgVal")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_mutable_flag _loc x2))), + (meta_virtual_flag _loc x3))), + (meta_ctyp _loc x4)) | Ast.CgMth (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgMth"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_private_flag _loc x2), - meta_ctyp _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgMth")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_private_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CgInh (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgInh"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgInh")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.CgSem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgSem"))), - meta_loc _loc x0), - meta_class_sig_item _loc x1), - meta_class_sig_item _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgSem")))))), + (meta_loc _loc x0))), + (meta_class_sig_item _loc x1))), + (meta_class_sig_item _loc x2)) | Ast.CgCtr (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgCtr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgCtr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.CgNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgNil")))))), + (meta_loc _loc x0)) and meta_class_str_item _loc = function | Ast.CrAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.CrVvr (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrVvr"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_mutable_flag _loc x2), - meta_ctyp _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrVvr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_mutable_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CrVir (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrVir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_private_flag _loc x2), - meta_ctyp _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrVir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_private_flag _loc x2))), + (meta_ctyp _loc x3)) | Ast.CrVal (x0, x1, x2, x3, x4) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrVal"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_override_flag _loc x2), - meta_mutable_flag _loc x3), - meta_expr _loc x4) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrVal")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_override_flag _loc x2))), + (meta_mutable_flag _loc x3))), + (meta_expr _loc x4)) | Ast.CrMth (x0, x1, x2, x3, x4, x5) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrMth"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_override_flag _loc x2), - meta_private_flag _loc x3), - meta_expr _loc x4), - meta_ctyp _loc x5) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, + "CrMth")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_override_flag _loc x2))), + (meta_private_flag _loc x3))), + (meta_expr _loc x4))), + (meta_ctyp _loc x5)) | Ast.CrIni (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrIni"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrIni")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.CrInh (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrInh"))), - meta_loc _loc x0), - meta_override_flag _loc x1), - meta_class_expr _loc x2), - meta_string _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrInh")))))), + (meta_loc _loc x0))), + (meta_override_flag _loc x1))), + (meta_class_expr _loc x2))), + (meta_string _loc x3)) | Ast.CrCtr (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrCtr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrCtr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.CrSem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrSem"))), - meta_loc _loc x0), - meta_class_str_item _loc x1), - meta_class_str_item _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrSem")))))), + (meta_loc _loc x0))), + (meta_class_str_item _loc x1))), + (meta_class_str_item _loc x2)) | Ast.CrNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrNil")))))), + (meta_loc _loc x0)) and meta_class_type _loc = function | Ast.CtAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.CtEq (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtEq"))), - meta_loc _loc x0), - meta_class_type _loc x1), - meta_class_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtEq")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1))), + (meta_class_type _loc x2)) | Ast.CtCol (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtCol"))), - meta_loc _loc x0), - meta_class_type _loc x1), - meta_class_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtCol")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1))), + (meta_class_type _loc x2)) | Ast.CtAnd (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtAnd"))), - meta_loc _loc x0), - meta_class_type _loc x1), - meta_class_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtAnd")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1))), + (meta_class_type _loc x2)) | Ast.CtSig (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtSig"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_class_sig_item _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtSig")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_class_sig_item _loc x2)) | Ast.CtFun (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtFun"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_class_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtFun")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_class_type _loc x2)) | Ast.CtCon (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtCon"))), - meta_loc _loc x0), - meta_virtual_flag _loc x1), - meta_ident _loc x2), - meta_ctyp _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtCon")))))), + (meta_loc _loc x0))), + (meta_virtual_flag _loc x1))), + (meta_ident _loc x2))), + (meta_ctyp _loc x3)) | Ast.CtNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtNil")))))), + (meta_loc _loc x0)) and meta_ctyp _loc = function | Ast.TyAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.TyPkg (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyPkg"))), - meta_loc _loc x0), - meta_module_type _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyPkg")))))), + (meta_loc _loc x0))), + (meta_module_type _loc x1)) | Ast.TyOfAmp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOfAmp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOfAmp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyAmp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAmp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAmp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyVrnInfSup (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnInfSup"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnInfSup")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyVrnInf (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnInf"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnInf")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyVrnSup (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnSup"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnSup")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyVrnEq (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrnEq"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrnEq")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TySta (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TySta"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TySta")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyTup (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyTup"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyTup")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyMut (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyMut"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyMut")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyPrv (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyPrv"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyPrv")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyOr (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyAnd (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAnd"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAnd")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyOf (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOf"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOf")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TySum (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TySum"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TySum")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyCom (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyCom"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyCom")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TySem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TySem"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TySem")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyCol (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyCol"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyCol")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyRec (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyRec"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyRec")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.TyVrn (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyVrn"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyVrn")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyQuM (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyQuM"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyQuM")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyQuP (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyQuP"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyQuP")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyQuo (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyQuo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyQuo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.TyPol (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyPol"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyPol")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyOlb (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyOlb"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyOlb")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyObj (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyObj"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_row_var_flag _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyObj")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_row_var_flag _loc x2)) | Ast.TyDcl (x0, x1, x2, x3, x4) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyDcl"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_list meta_ctyp _loc x2), - meta_ctyp _loc x3), - meta_list - (fun _loc (x1, x2) -> - Ast.PaTup (_loc, - Ast.PaCom (_loc, meta_ctyp _loc x1, - meta_ctyp _loc x2))) - _loc x4) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyDcl")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_list meta_ctyp _loc x2))), + (meta_ctyp _loc x3))), + (meta_list + (fun _loc (x1, x2) -> + Ast.PaTup (_loc, + (Ast.PaCom (_loc, + (meta_ctyp _loc x1), + (meta_ctyp _loc x2))))) + _loc x4)) | Ast.TyMan (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyMan"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyMan")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyId (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.TyLab (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyLab"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyLab")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyCls (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyCls"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyCls")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.TyArr (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyArr"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyArr")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyApp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyApp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyApp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyAny x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAny"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAny")))))), + (meta_loc _loc x0)) | Ast.TyAli (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAli"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAli")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.TyNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyNil")))))), + (meta_loc _loc x0)) and meta_direction_flag _loc = function | Ast.DiAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.DiDownto -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "DiDownto"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "DiDownto"))))) | Ast.DiTo -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "DiTo"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "DiTo"))))) and meta_expr _loc = function | Ast.ExPkg (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExPkg"))), - meta_loc _loc x0), - meta_module_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExPkg")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1)) | Ast.ExFUN (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFUN"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExFUN")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.ExOpI (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExOpI"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExOpI")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_expr _loc x2)) | Ast.ExWhi (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExWhi"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExWhi")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExVrn (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExVrn"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExVrn")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExTyc (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExTyc"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExTyc")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_ctyp _loc x2)) | Ast.ExCom (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExCom"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExCom")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExTup (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExTup"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExTup")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExTry (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExTry"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_match_case _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExTry")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_match_case _loc x2)) | Ast.ExStr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExStr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExStr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExSte (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSte"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSte")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExSnd (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSnd"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_string _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSnd")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_string _loc x2)) | Ast.ExSeq (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSeq"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSeq")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExRec (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExRec"))), - meta_loc _loc x0), - meta_rec_binding _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExRec")))))), + (meta_loc _loc x0))), + (meta_rec_binding _loc x1))), + (meta_expr _loc x2)) | Ast.ExOvr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExOvr"))), - meta_loc _loc x0), - meta_rec_binding _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExOvr")))))), + (meta_loc _loc x0))), + (meta_rec_binding _loc x1)) | Ast.ExOlb (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExOlb"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExOlb")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.ExObj (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExObj"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_class_str_item _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExObj")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_class_str_item _loc x2)) | Ast.ExNew (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExNew"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExNew")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.ExMat (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExMat"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_match_case _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExMat")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_match_case _loc x2)) | Ast.ExLmd (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLmd"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_expr _loc x2), - meta_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLmd")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_expr _loc x2))), + (meta_expr _loc x3)) | Ast.ExLet (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLet"))), - meta_loc _loc x0), - meta_rec_flag _loc x1), - meta_binding _loc x2), - meta_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLet")))))), + (meta_loc _loc x0))), + (meta_rec_flag _loc x1))), + (meta_binding _loc x2))), + (meta_expr _loc x3)) | Ast.ExLaz (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLaz"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLaz")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExLab (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExLab"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExLab")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.ExNativeInt (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExNativeInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExNativeInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExInt64 (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExInt64"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExInt64")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExInt32 (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExInt32"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExInt32")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExInt (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExIfe (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExIfe"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2), - meta_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExIfe")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2))), + (meta_expr _loc x3)) | Ast.ExFun (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFun"))), - meta_loc _loc x0), - meta_match_case _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExFun")))))), + (meta_loc _loc x0))), + (meta_match_case _loc x1)) | Ast.ExFor (x0, x1, x2, x3, x4, x5) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFor"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2), - meta_expr _loc x3), - meta_direction_flag _loc x4), - meta_expr _loc x5) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, + "ExFor")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2))), + (meta_expr _loc x3))), + (meta_direction_flag _loc x4))), + (meta_expr _loc x5)) | Ast.ExFlo (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExFlo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExFlo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExCoe (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExCoe"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_ctyp _loc x2), - meta_ctyp _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExCoe")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_ctyp _loc x2))), + (meta_ctyp _loc x3)) | Ast.ExChr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExChr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExChr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.ExAss (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAss"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAss")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExAsr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAsr"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAsr")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExAsf x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAsf"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAsf")))))), + (meta_loc _loc x0)) | Ast.ExSem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExSem"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExSem")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExArr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExArr"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExArr")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.ExAre (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAre"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAre")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExApp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExApp"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExApp")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.ExAcc (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAcc"))), - meta_loc _loc x0), - meta_expr _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAcc")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1))), + (meta_expr _loc x2)) | Ast.ExId (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.ExNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExNil")))))), + (meta_loc _loc x0)) and meta_ident _loc = function | Ast.IdAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.IdUid (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdUid"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdUid")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.IdLid (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdLid"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdLid")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.IdApp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdApp"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdApp")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) | Ast.IdAcc (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdAcc"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdAcc")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) and meta_match_case _loc = function | Ast.McAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.McArr (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McArr"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_expr _loc x2), - meta_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McArr")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_expr _loc x2))), + (meta_expr _loc x3)) | Ast.McOr (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McOr"))), - meta_loc _loc x0), - meta_match_case _loc x1), - meta_match_case _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McOr")))))), + (meta_loc _loc x0))), + (meta_match_case _loc x1))), + (meta_match_case _loc x2)) | Ast.McNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McNil")))))), + (meta_loc _loc x0)) and meta_meta_bool _loc = function | Ast.BAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.BFalse -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BFalse"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BFalse"))))) | Ast.BTrue -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BTrue"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BTrue"))))) and meta_meta_list mf_a _loc = function | Ast.LAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.LCons (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "LCons"))), - mf_a _loc x0), - meta_meta_list mf_a _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "LCons")))))), + (mf_a _loc x0))), + (meta_meta_list mf_a _loc x1)) | Ast.LNil -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "LNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "LNil"))))) and meta_meta_option mf_a _loc = function | Ast.OAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.OSome x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "OSome"))), - mf_a _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "OSome")))))), + (mf_a _loc x0)) | Ast.ONone -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ONone"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ONone"))))) and meta_module_binding _loc = function | Ast.MbAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.MbCol (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbCol"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbCol")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.MbColEq (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbColEq"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2), - meta_module_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbColEq")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2))), + (meta_module_expr _loc x3)) | Ast.MbAnd (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbAnd"))), - meta_loc _loc x0), - meta_module_binding _loc x1), - meta_module_binding _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbAnd")))))), + (meta_loc _loc x0))), + (meta_module_binding _loc x1))), + (meta_module_binding _loc x2)) | Ast.MbNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbNil")))))), + (meta_loc _loc x0)) and meta_module_expr _loc = function | Ast.MeAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.MePkg (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MePkg"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MePkg")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.MeTyc (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeTyc"))), - meta_loc _loc x0), - meta_module_expr _loc x1), - meta_module_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeTyc")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1))), + (meta_module_type _loc x2)) | Ast.MeStr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeStr"))), - meta_loc _loc x0), - meta_str_item _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeStr")))))), + (meta_loc _loc x0))), + (meta_str_item _loc x1)) | Ast.MeFun (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeFun"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2), - meta_module_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeFun")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2))), + (meta_module_expr _loc x3)) | Ast.MeApp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeApp"))), - meta_loc _loc x0), - meta_module_expr _loc x1), - meta_module_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeApp")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1))), + (meta_module_expr _loc x2)) | Ast.MeId (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.MeNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeNil")))))), + (meta_loc _loc x0)) and meta_module_type _loc = function | Ast.MtAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.MtWit (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtWit"))), - meta_loc _loc x0), - meta_module_type _loc x1), - meta_with_constr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtWit")))))), + (meta_loc _loc x0))), + (meta_module_type _loc x1))), + (meta_with_constr _loc x2)) | Ast.MtSig (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtSig"))), - meta_loc _loc x0), - meta_sig_item _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtSig")))))), + (meta_loc _loc x0))), + (meta_sig_item _loc x1)) | Ast.MtQuo (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtQuo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtQuo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.MtFun (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtFun"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2), - meta_module_type _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtFun")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2))), + (meta_module_type _loc x3)) | Ast.MtId (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.MtNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtNil")))))), + (meta_loc _loc x0)) and meta_mutable_flag _loc = function | Ast.MuAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.MuNil -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MuNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MuNil"))))) | Ast.MuMutable -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MuMutable"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MuMutable"))))) and meta_override_flag _loc = function | Ast.OvAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.OvNil -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "OvNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "OvNil"))))) | Ast.OvOverride -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "OvOverride"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "OvOverride"))))) and meta_patt _loc = function | Ast.PaLaz (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaLaz"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaLaz")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaVrn (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaVrn"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaVrn")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaTyp (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaTyp"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaTyp")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.PaTyc (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaTyc"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaTyc")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_ctyp _loc x2)) | Ast.PaTup (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaTup"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaTup")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaStr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaStr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaStr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaEq (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaEq"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaEq")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_patt _loc x2)) | Ast.PaRec (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaRec"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaRec")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaRng (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaRng"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaRng")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaOrp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaOrp"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaOrp")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaOlbi (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaOlbi"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_patt _loc x2), - meta_expr _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaOlbi")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_patt _loc x2))), + (meta_expr _loc x3)) | Ast.PaOlb (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaOlb"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaOlb")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_patt _loc x2)) | Ast.PaLab (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaLab"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaLab")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_patt _loc x2)) | Ast.PaFlo (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaFlo"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaFlo")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaNativeInt (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaNativeInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaNativeInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaInt64 (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaInt64"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaInt64")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaInt32 (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaInt32"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaInt32")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaInt (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaInt"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaInt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaChr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaChr"))), - meta_loc _loc x0), - meta_string _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaChr")))))), + (meta_loc _loc x0))), + (meta_string _loc x1)) | Ast.PaSem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaSem"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaSem")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaCom (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaCom"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaCom")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaArr (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaArr"))), - meta_loc _loc x0), - meta_patt _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaArr")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1)) | Ast.PaApp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaApp"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaApp")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaAny x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaAny"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaAny")))))), + (meta_loc _loc x0)) | Ast.PaAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.PaAli (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaAli"))), - meta_loc _loc x0), - meta_patt _loc x1), - meta_patt _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaAli")))))), + (meta_loc _loc x0))), + (meta_patt _loc x1))), + (meta_patt _loc x2)) | Ast.PaId (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaId"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaId")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.PaNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaNil")))))), + (meta_loc _loc x0)) and meta_private_flag _loc = function | Ast.PrAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.PrNil -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PrNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PrNil"))))) | Ast.PrPrivate -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PrPrivate"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PrPrivate"))))) and meta_rec_binding _loc = function | Ast.RbAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.RbEq (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbEq"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbEq")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_expr _loc x2)) | Ast.RbSem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbSem"))), - meta_loc _loc x0), - meta_rec_binding _loc x1), - meta_rec_binding _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbSem")))))), + (meta_loc _loc x0))), + (meta_rec_binding _loc x1))), + (meta_rec_binding _loc x2)) | Ast.RbNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbNil")))))), + (meta_loc _loc x0)) and meta_rec_flag _loc = function | Ast.ReAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.ReNil -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ReNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ReNil"))))) | Ast.ReRecursive -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ReRecursive"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ReRecursive"))))) and meta_row_var_flag _loc = function | Ast.RvAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.RvNil -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RvNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RvNil"))))) | Ast.RvRowVar -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RvRowVar"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RvRowVar"))))) and meta_sig_item _loc = function | Ast.SgAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.SgVal (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgVal"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgVal")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2)) | Ast.SgTyp (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgTyp"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgTyp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.SgOpn (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgOpn"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgOpn")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.SgMty (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgMty"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgMty")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.SgRecMod (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgRecMod"))), - meta_loc _loc x0), - meta_module_binding _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgRecMod")))))), + (meta_loc _loc x0))), + (meta_module_binding _loc x1)) | Ast.SgMod (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgMod"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgMod")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.SgInc (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgInc"))), - meta_loc _loc x0), - meta_module_type _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgInc")))))), + (meta_loc _loc x0))), + (meta_module_type _loc x1)) | Ast.SgExt (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgExt"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2), - meta_meta_list meta_string _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgExt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2))), + (meta_meta_list meta_string _loc x3)) | Ast.SgExc (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgExc"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgExc")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.SgDir (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgDir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgDir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.SgSem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgSem"))), - meta_loc _loc x0), - meta_sig_item _loc x1), - meta_sig_item _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgSem")))))), + (meta_loc _loc x0))), + (meta_sig_item _loc x1))), + (meta_sig_item _loc x2)) | Ast.SgClt (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgClt"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgClt")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.SgCls (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgCls"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgCls")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.SgNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgNil")))))), + (meta_loc _loc x0)) and meta_str_item _loc = function | Ast.StAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.StVal (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StVal"))), - meta_loc _loc x0), - meta_rec_flag _loc x1), - meta_binding _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StVal")))))), + (meta_loc _loc x0))), + (meta_rec_flag _loc x1))), + (meta_binding _loc x2)) | Ast.StTyp (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StTyp"))), - meta_loc _loc x0), - meta_ctyp _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StTyp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1)) | Ast.StOpn (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StOpn"))), - meta_loc _loc x0), - meta_ident _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StOpn")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1)) | Ast.StMty (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StMty"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_type _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StMty")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_type _loc x2)) | Ast.StRecMod (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StRecMod"))), - meta_loc _loc x0), - meta_module_binding _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StRecMod")))))), + (meta_loc _loc x0))), + (meta_module_binding _loc x1)) | Ast.StMod (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StMod"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_module_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StMod")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_module_expr _loc x2)) | Ast.StInc (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StInc"))), - meta_loc _loc x0), - meta_module_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StInc")))))), + (meta_loc _loc x0))), + (meta_module_expr _loc x1)) | Ast.StExt (x0, x1, x2, x3) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StExt"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_ctyp _loc x2), - meta_meta_list meta_string _loc x3) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StExt")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_ctyp _loc x2))), + (meta_meta_list meta_string _loc x3)) | Ast.StExp (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StExp"))), - meta_loc _loc x0), - meta_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StExp")))))), + (meta_loc _loc x0))), + (meta_expr _loc x1)) | Ast.StExc (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StExc"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_meta_option meta_ident _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StExc")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_meta_option meta_ident _loc x2)) | Ast.StDir (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StDir"))), - meta_loc _loc x0), - meta_string _loc x1), - meta_expr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StDir")))))), + (meta_loc _loc x0))), + (meta_string _loc x1))), + (meta_expr _loc x2)) | Ast.StSem (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StSem"))), - meta_loc _loc x0), - meta_str_item _loc x1), - meta_str_item _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StSem")))))), + (meta_loc _loc x0))), + (meta_str_item _loc x1))), + (meta_str_item _loc x2)) | Ast.StClt (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StClt"))), - meta_loc _loc x0), - meta_class_type _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StClt")))))), + (meta_loc _loc x0))), + (meta_class_type _loc x1)) | Ast.StCls (x0, x1) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StCls"))), - meta_loc _loc x0), - meta_class_expr _loc x1) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StCls")))))), + (meta_loc _loc x0))), + (meta_class_expr _loc x1)) | Ast.StNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StNil")))))), + (meta_loc _loc x0)) and meta_virtual_flag _loc = function | Ast.ViAnt x0 -> Ast.PaAnt (_loc, x0) | Ast.ViNil -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ViNil"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ViNil"))))) | Ast.ViVirtual -> Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ViVirtual"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ViVirtual"))))) and meta_with_constr _loc = function | Ast.WcAnt (x0, x1) -> Ast.PaAnt (x0, x1) | Ast.WcAnd (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcAnd"))), - meta_loc _loc x0), - meta_with_constr _loc x1), - meta_with_constr _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcAnd")))))), + (meta_loc _loc x0))), + (meta_with_constr _loc x1))), + (meta_with_constr _loc x2)) | Ast.WcMoS (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcMoS"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcMoS")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) | Ast.WcTyS (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcTyS"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcTyS")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.WcMod (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcMod"))), - meta_loc _loc x0), - meta_ident _loc x1), - meta_ident _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcMod")))))), + (meta_loc _loc x0))), + (meta_ident _loc x1))), + (meta_ident _loc x2)) | Ast.WcTyp (x0, x1, x2) -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcTyp"))), - meta_loc _loc x0), - meta_ctyp _loc x1), - meta_ctyp _loc x2) + (Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcTyp")))))), + (meta_loc _loc x0))), + (meta_ctyp _loc x1))), + (meta_ctyp _loc x2)) | Ast.WcNil x0 -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcNil"))), - meta_loc _loc x0) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcNil")))))), + (meta_loc _loc x0)) end @@ -13902,11 +14112,11 @@ module Struct = | Loc.Exc_located (qloc, exc) -> raise (Loc.Exc_located (qloc, - Error.E ((name, pos_tag, Finding, exc)))) + (Error.E ((name, pos_tag, Finding, exc))))) | exc -> raise (Loc.Exc_located (loc, - Error.E ((name, pos_tag, Finding, exc)))) in + (Error.E ((name, pos_tag, Finding, exc))))) in let loc = Loc.join (Loc.move `start quotation.q_shift loc) in expand_quotation loc expander pos_tag quotation @@ -14086,7 +14296,7 @@ module Struct = | Ast.IdAcc (_, i1, i2) -> self i2 (Some (self i1 acc)) | Ast.IdApp (_, i1, i2) -> let i' = - Lapply (fst (self i1 None), fst (self i2 None)) in + Lapply ((fst (self i1 None)), (fst (self i2 None))) in let x = (match acc with | None -> i' @@ -14164,30 +14374,33 @@ module Struct = | (t, TyQuo (_, s)) -> (t, s) | (TyQuo (_, s), t) -> (t, s) | _ -> error loc "invalid alias type") - in mktyp loc (Ptyp_alias (ctyp t, i)) + in mktyp loc (Ptyp_alias ((ctyp t), i)) | TyAny loc -> mktyp loc Ptyp_any | (TyApp (loc, _, _) as f) -> let (f, al) = ctyp_fa [] f in let (is_cls, li) = ctyp_long_id f in if is_cls - then mktyp loc (Ptyp_class (li, List.map ctyp al, [])) - else mktyp loc (Ptyp_constr (li, List.map ctyp al)) + then mktyp loc (Ptyp_class (li, (List.map ctyp al), [])) + else mktyp loc (Ptyp_constr (li, (List.map ctyp al))) | TyArr (loc, (TyLab (_, lab, t1)), t2) -> - mktyp loc (Ptyp_arrow (lab, ctyp t1, ctyp t2)) + mktyp loc (Ptyp_arrow (lab, (ctyp t1), (ctyp t2))) | TyArr (loc, (TyOlb (loc1, lab, t1)), t2) -> let t1 = - TyApp (loc1, Ast.TyId (loc1, Ast.IdLid (loc1, "option")), - t1) - in mktyp loc (Ptyp_arrow ("?" ^ lab, ctyp t1, ctyp t2)) + TyApp (loc1, + (Ast.TyId (loc1, (Ast.IdLid (loc1, "option")))), t1) + in + mktyp loc + (Ptyp_arrow (("?" ^ lab), (ctyp t1), (ctyp t2))) | TyArr (loc, t1, t2) -> - mktyp loc (Ptyp_arrow ("", ctyp t1, ctyp t2)) + mktyp loc (Ptyp_arrow ("", (ctyp t1), (ctyp t2))) | Ast.TyObj (loc, fl, Ast.RvNil) -> mktyp loc (Ptyp_object (meth_list fl [])) | Ast.TyObj (loc, fl, Ast.RvRowVar) -> mktyp loc (Ptyp_object (meth_list fl [ mkfield loc Pfield_var ])) - | TyCls (loc, id) -> mktyp loc (Ptyp_class (ident id, [], [])) + | TyCls (loc, id) -> + mktyp loc (Ptyp_class ((ident id), [], [])) | Ast.TyPkg (loc, pt) -> let (i, cs) = package_type pt in mktyp loc (Ptyp_package (i, cs)) @@ -14198,7 +14411,7 @@ module Struct = | TyOlb (loc, _, _) -> error loc "labelled type not allowed here" | TyPol (loc, t1, t2) -> - mktyp loc (Ptyp_poly (ty_var_list_of_ctyp t1, ctyp t2)) + mktyp loc (Ptyp_poly ((ty_var_list_of_ctyp t1), (ctyp t2))) | TyQuo (loc, s) -> mktyp loc (Ptyp_var s) | TyRec (loc, _) -> error loc "record type not allowed here" | TySum (loc, _) -> error loc "sum type not allowed here" @@ -14219,14 +14432,15 @@ module Struct = (Ptyp_tuple (List.map ctyp (list_of_ctyp t1 (list_of_ctyp t2 [])))) | Ast.TyVrnEq (loc, t) -> - mktyp loc (Ptyp_variant (row_field t, true, None)) + mktyp loc (Ptyp_variant ((row_field t), true, None)) | Ast.TyVrnSup (loc, t) -> - mktyp loc (Ptyp_variant (row_field t, false, None)) + mktyp loc (Ptyp_variant ((row_field t), false, None)) | Ast.TyVrnInf (loc, t) -> - mktyp loc (Ptyp_variant (row_field t, true, Some [])) + mktyp loc (Ptyp_variant ((row_field t), true, (Some []))) | Ast.TyVrnInfSup (loc, t, t') -> mktyp loc - (Ptyp_variant (row_field t, true, Some (name_tags t'))) + (Ptyp_variant ((row_field t), true, + (Some (name_tags t')))) | TyAnt (loc, _) -> error loc "antiquotation not allowed here" | TyOfAmp (_, _, _) | TyAmp (_, _, _) | TySta (_, _, _) | TyCom (_, _, _) | TyVrn (_, _) | TyQuM (_, _) | @@ -14238,9 +14452,9 @@ module Struct = | Ast.TyNil _ -> [] | Ast.TyVrn (_, i) -> [ Rtag (i, true, []) ] | Ast.TyOfAmp (_, (Ast.TyVrn (_, i)), t) -> - [ Rtag (i, true, List.map ctyp (list_of_ctyp t [])) ] + [ Rtag (i, true, (List.map ctyp (list_of_ctyp t []))) ] | Ast.TyOf (_, (Ast.TyVrn (_, i)), t) -> - [ Rtag (i, false, List.map ctyp (list_of_ctyp t [])) ] + [ Rtag (i, false, (List.map ctyp (list_of_ctyp t []))) ] | Ast.TyOr (_, t1, t2) -> (row_field t1) @ (row_field t2) | t -> [ Rinherit (ctyp t) ] and name_tags = @@ -14253,7 +14467,7 @@ module Struct = | Ast.TyNil _ -> acc | Ast.TySem (_, t1, t2) -> meth_list t1 (meth_list t2 acc) | Ast.TyCol (loc, (Ast.TyId (_, (Ast.IdLid (_, lab)))), t) -> - (mkfield loc (Pfield (lab, mkpolytype (ctyp t)))) :: acc + (mkfield loc (Pfield (lab, (mkpolytype (ctyp t))))) :: acc | _ -> assert false and package_type_constraints wc acc = match wc with @@ -14436,8 +14650,8 @@ module Struct = then mkghpat loc (Ppat_constant (Const_char c1)) else mkghpat loc - (Ppat_or (mkghpat loc (Ppat_constant (Const_char c1)), - deep_mkrangepat loc (Char.chr ((Char.code c1) + 1)) c2)) + (Ppat_or ((mkghpat loc (Ppat_constant (Const_char c1))), + (deep_mkrangepat loc (Char.chr ((Char.code c1) + 1)) c2))) let rec mkrangepat loc c1 c2 = if c1 > c2 @@ -14447,16 +14661,17 @@ module Struct = then mkpat loc (Ppat_constant (Const_char c1)) else mkpat loc - (Ppat_or (mkghpat loc (Ppat_constant (Const_char c1)), - deep_mkrangepat loc (Char.chr ((Char.code c1) + 1)) c2)) + (Ppat_or ((mkghpat loc (Ppat_constant (Const_char c1))), + (deep_mkrangepat loc (Char.chr ((Char.code c1) + 1)) + c2))) let rec patt = function | Ast.PaId (loc, (Ast.IdLid (_, s))) -> mkpat loc (Ppat_var s) | Ast.PaId (loc, i) -> let p = - Ppat_construct (long_uident ~conv_con i, None, - constructors_arity ()) + Ppat_construct ((long_uident ~conv_con i), None, + (constructors_arity ())) in mkpat loc p | PaAli (loc, p1, p2) -> let (p, i) = @@ -14464,14 +14679,14 @@ module Struct = | (p, Ast.PaId (_, (Ast.IdLid (_, s)))) -> (p, s) | (Ast.PaId (_, (Ast.IdLid (_, s))), p) -> (p, s) | _ -> error loc "invalid alias pattern") - in mkpat loc (Ppat_alias (patt p, i)) + in mkpat loc (Ppat_alias ((patt p), i)) | PaAnt (loc, _) -> error loc "antiquotation not allowed here" | PaAny loc -> mkpat loc Ppat_any | Ast.PaApp (loc, (Ast.PaId (_, (Ast.IdUid (_, s)))), (Ast.PaTup (_, (Ast.PaAny loc_any)))) -> mkpat loc - (Ppat_construct (lident (conv_con s), - Some (mkpat loc_any Ppat_any), false)) + (Ppat_construct ((lident (conv_con s)), + (Some (mkpat loc_any Ppat_any)), false)) | (PaApp (loc, _, _) as f) -> let (f, al) = patt_fa [] f in let al = List.map patt al @@ -14482,13 +14697,15 @@ module Struct = then mkpat loc (Ppat_construct (li, - Some (mkpat loc (Ppat_tuple al)), true)) + (Some (mkpat loc (Ppat_tuple al))), true)) else (let a = match al with | [ a ] -> a | _ -> mkpat loc (Ppat_tuple al) - in mkpat loc (Ppat_construct (li, Some a, false))) + in + mkpat loc + (Ppat_construct (li, (Some a), false))) | Ppat_variant (s, None) -> let a = if constructors_arity () @@ -14497,7 +14714,7 @@ module Struct = (match al with | [ a ] -> a | _ -> mkpat loc (Ppat_tuple al)) - in mkpat loc (Ppat_variant (s, Some a)) + in mkpat loc (Ppat_variant (s, (Some a))) | _ -> error (loc_of_patt f) "this is not a constructor, it cannot be applied in a pattern") @@ -14545,7 +14762,8 @@ module Struct = error loc "labeled pattern not allowed here" | PaOlb (loc, _, _) | PaOlbi (loc, _, _, _) -> error loc "labeled pattern not allowed here" - | PaOrp (loc, p1, p2) -> mkpat loc (Ppat_or (patt p1, patt p2)) + | PaOrp (loc, p1, p2) -> + mkpat loc (Ppat_or ((patt p1), (patt p2))) | PaRng (loc, p1, p2) -> (match (p1, p2) with | (PaChr (loc1, c1), PaChr (loc2, c2)) -> @@ -14573,7 +14791,7 @@ module Struct = (List.map patt (list_of_patt p1 (list_of_patt p2 [])))) | Ast.PaTup (loc, _) -> error loc "singleton tuple pattern" | PaTyc (loc, p, t) -> - mkpat loc (Ppat_constraint (patt p, ctyp t)) + mkpat loc (Ppat_constraint ((patt p), (ctyp t))) | PaTyp (loc, i) -> mkpat loc (Ppat_type (long_type_ident i)) | PaVrn (loc, s) -> mkpat loc (Ppat_variant (s, None)) | PaLaz (loc, p) -> mkpat loc (Ppat_lazy (patt p)) @@ -14607,9 +14825,11 @@ module Struct = let rec normalize_acc = (function | Ast.IdAcc (_loc, i1, i2) -> - Ast.ExAcc (_loc, normalize_acc i1, normalize_acc i2) + Ast.ExAcc (_loc, (normalize_acc i1), + (normalize_acc i2)) | Ast.IdApp (_loc, i1, i2) -> - Ast.ExApp (_loc, normalize_acc i1, normalize_acc i2) + Ast.ExApp (_loc, (normalize_acc i1), + (normalize_acc i2)) | (Ast.IdAnt (_loc, _) | Ast.IdUid (_loc, _) | Ast.IdLid (_loc, _) as i) -> Ast.ExId (_loc, i)) @@ -14629,7 +14849,7 @@ module Struct = function | Ast.ExAcc (loc, x, (Ast.ExId (_, (Ast.IdLid (_, "val"))))) -> mkexp loc - (Pexp_apply (mkexp loc (Pexp_ident (Lident "!")), + (Pexp_apply ((mkexp loc (Pexp_ident (Lident "!"))), [ ("", (expr x)) ])) | (ExAcc (loc, _, _) | Ast.ExId (loc, (Ast.IdAcc (_, _, _))) as e) -> @@ -14639,7 +14859,7 @@ module Struct = let ca = constructors_arity () in ((mkexp loc - (Pexp_construct (mkli (conv_con s) ml, None, + (Pexp_construct ((mkli (conv_con s) ml), None, ca))), l) | (loc, ml, Ast.ExId (_, (Ast.IdLid (_, s)))) :: l -> @@ -14655,7 +14875,7 @@ module Struct = in (loc, (mkexp loc - (Pexp_field (e1, mkli (conv_lab s) ml)))) + (Pexp_field (e1, (mkli (conv_lab s) ml))))) | _ -> error (loc_of_expr e2) "lowercase identifier expected") @@ -14674,7 +14894,7 @@ module Struct = then mkexp loc (Pexp_construct (li, - Some (mkexp loc (Pexp_tuple al)), true)) + (Some (mkexp loc (Pexp_tuple al))), true)) else (let a = match al with @@ -14682,7 +14902,7 @@ module Struct = | _ -> mkexp loc (Pexp_tuple al) in mkexp loc - (Pexp_construct (li, Some a, false))) + (Pexp_construct (li, (Some a), false))) | Pexp_variant (s, None) -> let al = List.map snd al in let a = @@ -14692,12 +14912,13 @@ module Struct = (match al with | [ a ] -> a | _ -> mkexp loc (Pexp_tuple al)) - in mkexp loc (Pexp_variant (s, Some a)) - | _ -> mkexp loc (Pexp_apply (expr f, al))) + in mkexp loc (Pexp_variant (s, (Some a))) + | _ -> mkexp loc (Pexp_apply ((expr f), al))) | ExAre (loc, e1, e2) -> mkexp loc (Pexp_apply - (mkexp loc (Pexp_ident (array_function "Array" "get")), + ((mkexp loc + (Pexp_ident (array_function "Array" "get"))), [ ("", (expr e1)); ("", (expr e2)) ])) | ExArr (loc, e) -> mkexp loc (Pexp_array (List.map expr (list_of_expr e []))) @@ -14707,24 +14928,24 @@ module Struct = (match e with | Ast.ExAcc (loc, x, (Ast.ExId (_, (Ast.IdLid (_, "val"))))) -> - Pexp_apply (mkexp loc (Pexp_ident (Lident ":=")), + Pexp_apply ((mkexp loc (Pexp_ident (Lident ":="))), [ ("", (expr x)); ("", (expr v)) ]) | ExAcc (loc, _, _) -> (match (expr e).pexp_desc with | Pexp_field (e, lab) -> - Pexp_setfield (e, lab, expr v) + Pexp_setfield (e, lab, (expr v)) | _ -> error loc "bad record access") | ExAre (_, e1, e2) -> Pexp_apply - (mkexp loc - (Pexp_ident (array_function "Array" "set")), + ((mkexp loc + (Pexp_ident (array_function "Array" "set"))), [ ("", (expr e1)); ("", (expr e2)); ("", (expr v)) ]) | Ast.ExId (_, (Ast.IdLid (_, lab))) -> - Pexp_setinstvar (lab, expr v) + Pexp_setinstvar (lab, (expr v)) | ExSte (_, e1, e2) -> Pexp_apply - (mkexp loc - (Pexp_ident (array_function "String" "set")), + ((mkexp loc + (Pexp_ident (array_function "String" "set"))), [ ("", (expr e1)); ("", (expr e2)); ("", (expr v)) ]) | _ -> error loc "bad left part of assignment") in mkexp loc e @@ -14735,7 +14956,9 @@ module Struct = | ExCoe (loc, e, t1, t2) -> let t1 = (match t1 with | Ast.TyNil _ -> None | t -> Some (ctyp t)) - in mkexp loc (Pexp_constraint (expr e, t1, Some (ctyp t2))) + in + mkexp loc + (Pexp_constraint ((expr e), t1, (Some (ctyp t2)))) | ExFlo (loc, s) -> mkexp loc (Pexp_constant (Const_float (remove_underscores s))) @@ -14743,8 +14966,8 @@ module Struct = let e3 = ExSeq (loc, el) in mkexp loc - (Pexp_for (i, expr e1, expr e2, mkdirection df, - expr e3)) + (Pexp_for (i, (expr e1), (expr e2), (mkdirection df), + (expr e3))) | Ast.ExFun (loc, (Ast.McArr (_, (PaLab (_, lab, po)), w, e))) -> mkexp loc @@ -14755,20 +14978,20 @@ module Struct = let lab = paolab lab p in mkexp loc - (Pexp_function ("?" ^ lab, Some (expr e1), + (Pexp_function (("?" ^ lab), (Some (expr e1)), [ ((patt p), (when_expr e2 w)) ])) | Ast.ExFun (loc, (Ast.McArr (_, (PaOlb (_, lab, p)), w, e))) -> let lab = paolab lab p in mkexp loc - (Pexp_function ("?" ^ lab, None, + (Pexp_function (("?" ^ lab), None, [ ((patt_of_lab loc lab p), (when_expr e w)) ])) | ExFun (loc, a) -> - mkexp loc (Pexp_function ("", None, match_case a [])) + mkexp loc (Pexp_function ("", None, (match_case a []))) | ExIfe (loc, e1, e2, e3) -> mkexp loc - (Pexp_ifthenelse (expr e1, expr e2, Some (expr e3))) + (Pexp_ifthenelse ((expr e1), (expr e2), (Some (expr e3)))) | ExInt (loc, s) -> let i = (try int_of_string s @@ -14805,11 +15028,11 @@ module Struct = error loc "labeled expression not allowed here" | ExLaz (loc, e) -> mkexp loc (Pexp_lazy (expr e)) | ExLet (loc, rf, bi, e) -> - mkexp loc (Pexp_let (mkrf rf, binding bi [], expr e)) + mkexp loc (Pexp_let ((mkrf rf), (binding bi []), (expr e))) | ExLmd (loc, i, me, e) -> - mkexp loc (Pexp_letmodule (i, module_expr me, expr e)) + mkexp loc (Pexp_letmodule (i, (module_expr me), (expr e))) | ExMat (loc, e, a) -> - mkexp loc (Pexp_match (expr e, match_case a [])) + mkexp loc (Pexp_match ((expr e), (match_case a []))) | ExNew (loc, id) -> mkexp loc (Pexp_new (long_type_ident id)) | ExObj (loc, po, cfl) -> let p = @@ -14828,54 +15051,55 @@ module Struct = (match eo with | Ast.ExNil _ -> None | e -> Some (expr e)) - in mkexp loc (Pexp_record (mklabexp lel [], eo))) + in mkexp loc (Pexp_record ((mklabexp lel []), eo))) | ExSeq (_loc, e) -> let rec loop = (function - | [] -> expr (Ast.ExId (_loc, Ast.IdUid (_loc, "()"))) + | [] -> expr (Ast.ExId (_loc, (Ast.IdUid (_loc, "()")))) | [ e ] -> expr e | e :: el -> let _loc = Loc.merge (loc_of_expr e) _loc - in mkexp _loc (Pexp_sequence (expr e, loop el))) + in mkexp _loc (Pexp_sequence ((expr e), (loop el)))) in loop (list_of_expr e []) - | ExSnd (loc, e, s) -> mkexp loc (Pexp_send (expr e, s)) + | ExSnd (loc, e, s) -> mkexp loc (Pexp_send ((expr e), s)) | ExSte (loc, e1, e2) -> mkexp loc (Pexp_apply - (mkexp loc - (Pexp_ident (array_function "String" "get")), + ((mkexp loc + (Pexp_ident (array_function "String" "get"))), [ ("", (expr e1)); ("", (expr e2)) ])) | ExStr (loc, s) -> mkexp loc (Pexp_constant (Const_string (string_of_string_token loc s))) | ExTry (loc, e, a) -> - mkexp loc (Pexp_try (expr e, match_case a [])) + mkexp loc (Pexp_try ((expr e), (match_case a []))) | Ast.ExTup (loc, (Ast.ExCom (_, e1, e2))) -> mkexp loc (Pexp_tuple (List.map expr (list_of_expr e1 (list_of_expr e2 [])))) | Ast.ExTup (loc, _) -> error loc "singleton tuple" | ExTyc (loc, e, t) -> - mkexp loc (Pexp_constraint (expr e, Some (ctyp t), None)) + mkexp loc + (Pexp_constraint ((expr e), (Some (ctyp t)), None)) | Ast.ExId (loc, (Ast.IdUid (_, "()"))) -> - mkexp loc (Pexp_construct (lident "()", None, true)) + mkexp loc (Pexp_construct ((lident "()"), None, true)) | Ast.ExId (loc, (Ast.IdLid (_, s))) -> mkexp loc (Pexp_ident (lident s)) | Ast.ExId (loc, (Ast.IdUid (_, s))) -> mkexp loc - (Pexp_construct (lident (conv_con s), None, true)) + (Pexp_construct ((lident (conv_con s)), None, true)) | ExVrn (loc, s) -> mkexp loc (Pexp_variant (s, None)) | ExWhi (loc, e1, el) -> let e2 = ExSeq (loc, el) - in mkexp loc (Pexp_while (expr e1, expr e2)) + in mkexp loc (Pexp_while ((expr e1), (expr e2))) | Ast.ExOpI (loc, i, e) -> - mkexp loc (Pexp_open (long_uident i, expr e)) + mkexp loc (Pexp_open ((long_uident i), (expr e))) | Ast.ExPkg (loc, (Ast.MeTyc (_, me, pt))) -> - mkexp loc (Pexp_pack (module_expr me, package_type pt)) + mkexp loc (Pexp_pack ((module_expr me), (package_type pt))) | Ast.ExPkg (loc, _) -> error loc "(module_expr : package_type) expected here" - | ExFUN (loc, i, e) -> mkexp loc (Pexp_newtype (i, expr e)) + | ExFUN (loc, i, e) -> mkexp loc (Pexp_newtype (i, (expr e))) | Ast.ExCom (loc, _, _) -> error loc "expr, expr: not allowed here" | Ast.ExSem (loc, _, _) -> @@ -14885,11 +15109,13 @@ module Struct = error (loc_of_expr e) "invalid expr" and patt_of_lab _loc lab = function - | Ast.PaNil _ -> patt (Ast.PaId (_loc, Ast.IdLid (_loc, lab))) + | Ast.PaNil _ -> + patt (Ast.PaId (_loc, (Ast.IdLid (_loc, lab)))) | p -> patt p and expr_of_lab _loc lab = function - | Ast.ExNil _ -> expr (Ast.ExId (_loc, Ast.IdLid (_loc, lab))) + | Ast.ExNil _ -> + expr (Ast.ExId (_loc, (Ast.IdLid (_loc, lab)))) | e -> expr e and label_expr = function @@ -14902,7 +15128,7 @@ module Struct = | Ast.BiAnd (_, x, y) -> binding x (binding y acc) | Ast.BiEq (_loc, p, (Ast.ExTyc (_, e, (Ast.TyPol (_, vs, ty))))) -> - ((patt (Ast.PaTyc (_loc, p, Ast.TyPol (_loc, vs, ty)))), + ((patt (Ast.PaTyc (_loc, p, (Ast.TyPol (_loc, vs, ty))))), (expr e)) :: acc | Ast.BiEq (_, p, e) -> ((patt p), (expr e)) :: acc | Ast.BiNil _ -> acc @@ -14916,7 +15142,7 @@ module Struct = and when_expr e w = match w with | Ast.ExNil _ -> expr e - | w -> mkexp (loc_of_expr w) (Pexp_when (expr w, expr e)) + | w -> mkexp (loc_of_expr w) (Pexp_when ((expr w), (expr e))) and mklabexp x acc = match x with | Ast.RbSem (_, x, y) -> mklabexp x (mklabexp y acc) @@ -14952,13 +15178,13 @@ module Struct = | Ast.MtId (loc, i) -> mkmty loc (Pmty_ident (long_uident i)) | Ast.MtFun (loc, n, nt, mt) -> mkmty loc - (Pmty_functor (n, module_type nt, module_type mt)) + (Pmty_functor (n, (module_type nt), (module_type mt))) | Ast.MtQuo (loc, _) -> error loc "module type variable not allowed here" | Ast.MtSig (loc, sl) -> mkmty loc (Pmty_signature (sig_item sl [])) | Ast.MtWit (loc, mt, wc) -> - mkmty loc (Pmty_with (module_type mt, mkwithc wc [])) + mkmty loc (Pmty_with ((module_type mt), (mkwithc wc []))) | Ast.MtAnt (_, _) -> assert false and sig_item s l = match s with @@ -14978,22 +15204,22 @@ module Struct = | Ast.SgSem (_, sg1, sg2) -> sig_item sg1 (sig_item sg2 l) | SgDir (_, _, _) -> l | Ast.SgExc (loc, (Ast.TyId (_, (Ast.IdUid (_, s))))) -> - (mksig loc (Psig_exception (conv_con s, []))) :: l + (mksig loc (Psig_exception ((conv_con s), []))) :: l | Ast.SgExc (loc, (Ast.TyOf (_, (Ast.TyId (_, (Ast.IdUid (_, s)))), t))) -> (mksig loc - (Psig_exception (conv_con s, - List.map ctyp (list_of_ctyp t [])))) :: + (Psig_exception ((conv_con s), + (List.map ctyp (list_of_ctyp t []))))) :: l | SgExc (_, _) -> assert false | SgExt (loc, n, t, sl) -> (mksig loc - (Psig_value (n, mkvalue_desc t (list_of_meta_list sl)))) :: + (Psig_value (n, (mkvalue_desc t (list_of_meta_list sl))))) :: l | SgInc (loc, mt) -> (mksig loc (Psig_include (module_type mt))) :: l | SgMod (loc, n, mt) -> - (mksig loc (Psig_module (n, module_type mt))) :: l + (mksig loc (Psig_module (n, (module_type mt)))) :: l | SgRecMod (loc, mb) -> (mksig loc (Psig_recmodule (module_sig_binding mb []))) :: l @@ -15008,7 +15234,7 @@ module Struct = | SgTyp (loc, tdl) -> (mksig loc (Psig_type (mktype_decl tdl []))) :: l | SgVal (loc, n, t) -> - (mksig loc (Psig_value (n, mkvalue_desc t []))) :: l + (mksig loc (Psig_value (n, (mkvalue_desc t [])))) :: l | Ast.SgAnt (loc, _) -> error loc "antiquotation in sig_item" and module_sig_binding x acc = match x with @@ -15028,17 +15254,18 @@ module Struct = | Ast.MeNil loc -> error loc "nil module expression" | Ast.MeId (loc, i) -> mkmod loc (Pmod_ident (long_uident i)) | Ast.MeApp (loc, me1, me2) -> - mkmod loc (Pmod_apply (module_expr me1, module_expr me2)) + mkmod loc + (Pmod_apply ((module_expr me1), (module_expr me2))) | Ast.MeFun (loc, n, mt, me) -> mkmod loc - (Pmod_functor (n, module_type mt, module_expr me)) + (Pmod_functor (n, (module_type mt), (module_expr me))) | Ast.MeStr (loc, sl) -> mkmod loc (Pmod_structure (str_item sl [])) | Ast.MeTyc (loc, me, mt) -> mkmod loc - (Pmod_constraint (module_expr me, module_type mt)) + (Pmod_constraint ((module_expr me), (module_type mt))) | Ast.MePkg (loc, (Ast.ExTyc (_, e, (Ast.TyPkg (_, pt))))) -> - mkmod loc (Pmod_unpack (expr e, package_type pt)) + mkmod loc (Pmod_unpack ((expr e), (package_type pt))) | Ast.MePkg (loc, _) -> error loc "(value expr) not supported yet" | Ast.MeAnt (loc, _) -> @@ -15062,55 +15289,58 @@ module Struct = | StDir (_, _, _) -> l | Ast.StExc (loc, (Ast.TyId (_, (Ast.IdUid (_, s)))), Ast. ONone) -> - (mkstr loc (Pstr_exception (conv_con s, []))) :: l + (mkstr loc (Pstr_exception ((conv_con s), []))) :: l | Ast.StExc (loc, (Ast.TyOf (_, (Ast.TyId (_, (Ast.IdUid (_, s)))), t)), Ast. ONone) -> (mkstr loc - (Pstr_exception (conv_con s, - List.map ctyp (list_of_ctyp t [])))) :: + (Pstr_exception ((conv_con s), + (List.map ctyp (list_of_ctyp t []))))) :: l | Ast.StExc (loc, (Ast.TyId (_, (Ast.IdUid (_, s)))), (Ast.OSome i)) -> - (mkstr loc (Pstr_exn_rebind (conv_con s, ident i))) :: l + (mkstr loc (Pstr_exn_rebind ((conv_con s), (ident i)))) :: + l | StExc (_, _, _) -> assert false | StExp (loc, e) -> (mkstr loc (Pstr_eval (expr e))) :: l | StExt (loc, n, t, sl) -> (mkstr loc (Pstr_primitive (n, - mkvalue_desc t (list_of_meta_list sl)))) :: + (mkvalue_desc t (list_of_meta_list sl))))) :: l | StInc (loc, me) -> (mkstr loc (Pstr_include (module_expr me))) :: l | StMod (loc, n, me) -> - (mkstr loc (Pstr_module (n, module_expr me))) :: l + (mkstr loc (Pstr_module (n, (module_expr me)))) :: l | StRecMod (loc, mb) -> (mkstr loc (Pstr_recmodule (module_str_binding mb []))) :: l | StMty (loc, n, mt) -> - (mkstr loc (Pstr_modtype (n, module_type mt))) :: l + (mkstr loc (Pstr_modtype (n, (module_type mt)))) :: l | StOpn (loc, id) -> (mkstr loc (Pstr_open (long_uident id))) :: l | StTyp (loc, tdl) -> (mkstr loc (Pstr_type (mktype_decl tdl []))) :: l | StVal (loc, rf, bi) -> - (mkstr loc (Pstr_value (mkrf rf, binding bi []))) :: l + (mkstr loc (Pstr_value ((mkrf rf), (binding bi [])))) :: l | Ast.StAnt (loc, _) -> error loc "antiquotation in str_item" and class_type = function | CtCon (loc, ViNil, id, tl) -> mkcty loc - (Pcty_constr (long_class_ident id, - List.map ctyp (list_of_opt_ctyp tl []))) + (Pcty_constr ((long_class_ident id), + (List.map ctyp (list_of_opt_ctyp tl [])))) | CtFun (loc, (TyLab (_, lab, t)), ct) -> - mkcty loc (Pcty_fun (lab, ctyp t, class_type ct)) + mkcty loc (Pcty_fun (lab, (ctyp t), (class_type ct))) | CtFun (loc, (TyOlb (loc1, lab, t)), ct) -> let t = - TyApp (loc1, Ast.TyId (loc1, Ast.IdLid (loc1, "option")), - t) - in mkcty loc (Pcty_fun ("?" ^ lab, ctyp t, class_type ct)) + TyApp (loc1, + (Ast.TyId (loc1, (Ast.IdLid (loc1, "option")))), t) + in + mkcty loc + (Pcty_fun (("?" ^ lab), (ctyp t), (class_type ct))) | CtFun (loc, t, ct) -> - mkcty loc (Pcty_fun ("", ctyp t, class_type ct)) + mkcty loc (Pcty_fun ("", (ctyp t), (class_type ct))) | CtSig (loc, t_o, ctfl) -> let t = (match t_o with | Ast.TyNil _ -> Ast.TyAny loc | t -> t) in @@ -15191,38 +15421,40 @@ module Struct = | (CeApp (loc, _, _) as c) -> let (ce, el) = class_expr_fa [] c in let el = List.map label_expr el - in mkpcl loc (Pcl_apply (class_expr ce, el)) + in mkpcl loc (Pcl_apply ((class_expr ce), el)) | CeCon (loc, ViNil, id, tl) -> mkpcl loc - (Pcl_constr (long_class_ident id, - List.map ctyp (list_of_opt_ctyp tl []))) + (Pcl_constr ((long_class_ident id), + (List.map ctyp (list_of_opt_ctyp tl [])))) | CeFun (loc, (PaLab (_, lab, po)), ce) -> mkpcl loc - (Pcl_fun (lab, None, patt_of_lab loc lab po, - class_expr ce)) + (Pcl_fun (lab, None, (patt_of_lab loc lab po), + (class_expr ce))) | CeFun (loc, (PaOlbi (_, lab, p, e)), ce) -> let lab = paolab lab p in mkpcl loc - (Pcl_fun ("?" ^ lab, Some (expr e), patt p, - class_expr ce)) + (Pcl_fun (("?" ^ lab), (Some (expr e)), (patt p), + (class_expr ce))) | CeFun (loc, (PaOlb (_, lab, p)), ce) -> let lab = paolab lab p in mkpcl loc - (Pcl_fun ("?" ^ lab, None, patt_of_lab loc lab p, - class_expr ce)) + (Pcl_fun (("?" ^ lab), None, (patt_of_lab loc lab p), + (class_expr ce))) | CeFun (loc, p, ce) -> - mkpcl loc (Pcl_fun ("", None, patt p, class_expr ce)) + mkpcl loc (Pcl_fun ("", None, (patt p), (class_expr ce))) | CeLet (loc, rf, bi, ce) -> - mkpcl loc (Pcl_let (mkrf rf, binding bi [], class_expr ce)) + mkpcl loc + (Pcl_let ((mkrf rf), (binding bi []), (class_expr ce))) | CeStr (loc, po, cfl) -> let p = (match po with | Ast.PaNil _ -> Ast.PaAny loc | p -> p) in let cil = class_str_item cfl [] in mkpcl loc (Pcl_structure (((patt p), cil))) | CeTyc (loc, ce, ct) -> - mkpcl loc (Pcl_constraint (class_expr ce, class_type ct)) + mkpcl loc + (Pcl_constraint ((class_expr ce), (class_type ct))) | CeCon (loc, _, _, _) -> error loc "invalid virtual class inside a class expression" | CeAnt (_, _) | CeEq (_, _, _) | CeAnd (_, _, _) | CeNil _ -> @@ -15237,7 +15469,7 @@ module Struct = | CrInh (loc, ov, ce, pb) -> let opb = if pb = "" then None else Some pb in - (Pcf_inher (override_flag loc ov, class_expr ce, opb)) :: + (Pcf_inher ((override_flag loc ov), (class_expr ce), opb)) :: l | CrIni (_, e) -> (Pcf_init (expr e)) :: l | CrMth (loc, s, ov, pf, e, t) -> @@ -15245,7 +15477,7 @@ module Struct = (match t with | Ast.TyNil _ -> None | t -> Some (mkpolytype (ctyp t))) in - let e = mkexp loc (Pexp_poly (expr e, t)) + let e = mkexp loc (Pexp_poly ((expr e), t)) in (Pcf_meth ((s, (mkprivate pf), (override_flag loc ov), e, @@ -15280,7 +15512,7 @@ module Struct = let phrase = function - | StDir (_, d, dp) -> Ptop_dir (d, directive dp) + | StDir (_, d, dp) -> Ptop_dir (d, (directive dp)) | si -> Ptop_def (str_item si) end @@ -15562,7 +15794,7 @@ module Struct = | Dynlink.Error e -> raise (Error ("Camlp4's dynamic loader initialization", - Dynlink.error_message e))) + (Dynlink.error_message e)))) else (); let fname = try find_in_path _path file @@ -15573,7 +15805,7 @@ module Struct = try Dynlink.loadfile fname with | Dynlink.Error e -> - raise (Error (fname, Dynlink.error_message e))) + raise (Error (fname, (Dynlink.error_message e)))) let is_native = Dynlink.is_native @@ -16417,7 +16649,8 @@ module Struct = | DeadEnd -> List.rev acc | LocAct (_, _) -> List.rev acc | Node { node = n; brother = b; son = s } -> - get_brothers ((Bro (n, get_brothers [] s)) :: acc) b + get_brothers ((Bro (n, (get_brothers [] s))) :: acc) + b and print_brothers ppf brothers = if brothers = [] then fprintf ppf "@ []" @@ -16771,7 +17004,7 @@ module Struct = function | Sself | Snext -> Snterm entry | Snterml (e, _) -> Snterm e - | Slist1sep (s, sep) -> Slist1sep (top_symb entry s, sep) + | Slist1sep (s, sep) -> Slist1sep ((top_symb entry s), sep) | _ -> raise Stream.Failure let top_tree entry = @@ -17466,7 +17699,7 @@ module Struct = "<W> Grammar extension: in [%s] some rule has been masked@." entry.ename else () - in LocAct (action, old_action :: action_list) + in LocAct (action, (old_action :: action_list)) | DeadEnd -> LocAct (action, [])) and insert_in_tree s sl tree = match try_insert s sl tree with @@ -19044,15 +19277,16 @@ module Printers = in o#expr f (Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "raise")), - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "Match_failure")), - Ast.ExStr (_loc, Ast.safe_string_escaped n)), - Ast.ExInt (_loc, string_of_int l)), - Ast.ExInt (_loc, string_of_int c)))) + (Ast.ExId (_loc, (Ast.IdLid (_loc, "raise")))), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "Match_failure")))), + (Ast.ExStr (_loc, + (Ast.safe_string_escaped n))))), + (Ast.ExInt (_loc, (string_of_int l))))), + (Ast.ExInt (_loc, (string_of_int c))))))) method node : 'a. formatter -> 'a -> ('a -> Loc.t) -> unit = fun f node loc_of_node -> @@ -19113,7 +19347,7 @@ module Printers = o#apply_expr y | al -> pp f "@[<2>%a@ (%a)@]" o#apply_expr a - (list o#under_pipe#expr ",@ ") al) + (list o#under_pipe#apply_expr ",@ ") al) else pp f "@[<2>%a@]" (list o#apply_expr "@ ") (a :: al) @@ -19459,9 +19693,6 @@ module Printers = | Ast.TyVrnSup (_, t) -> pp f "@[<2>[>@ %a@]@,]" o#sum_type t | Ast.TyCls (_, i) -> pp f "@[<2>#%a@]" o#ident i - | Ast.TyMan (_, t1, t2) -> - pp f "@[<2>%a =@ %a@]" o#simple_ctyp t1 - o#simple_ctyp t2 | Ast.TyVrn (_, s) -> pp f "`%a" o#var s | Ast.TySta (_, t1, t2) -> pp f "%a *@ %a" o#simple_ctyp t1 o#simple_ctyp t2 @@ -19501,6 +19732,8 @@ module Printers = pp f "@[<2>mutable@ %a@]" o#ctyp t | Ast.TyAmp (_, t1, t2) -> pp f "%a@ &@ %a" o#ctyp t1 o#ctyp t2 + | Ast.TyMan (_, t1, t2) -> + pp f "@[<2>%a =@ %a@]" o#simple_ctyp t1 o#ctyp t2 | Ast.TyDcl (_, tn, tp, te, cl) -> (pp f "@[<2>%a%a@]" o#type_params tp o#var tn; (match te with @@ -20405,11 +20638,14 @@ module Printers = let with_outfile = with_outfile - let print = print + let print output_file fct = + let o = new printer () in with_outfile output_file (fct o) - let print_interf = print_interf + let print_interf ?input_file:(_) ?output_file sg = + print output_file (fun o -> o#interf) sg - let print_implem = print_implem + let print_implem ?input_file:(_) ?output_file st = + print output_file (fun o -> o#implem) st end diff --git a/camlp4/boot/camlp4boot.ml b/camlp4/boot/camlp4boot.ml index c305bb4c65..618693ed88 100644 --- a/camlp4/boot/camlp4boot.ml +++ b/camlp4/boot/camlp4boot.ml @@ -367,14 +367,14 @@ Very old (no more supported) syntax:\n\ let mkumin _loc f arg = match arg with - | Ast.ExInt (_, n) -> Ast.ExInt (_loc, neg_string n) - | Ast.ExInt32 (_, n) -> Ast.ExInt32 (_loc, neg_string n) - | Ast.ExInt64 (_, n) -> Ast.ExInt64 (_loc, neg_string n) - | Ast.ExNativeInt (_, n) -> Ast.ExNativeInt (_loc, neg_string n) - | Ast.ExFlo (_, n) -> Ast.ExFlo (_loc, neg_string n) + | Ast.ExInt (_, n) -> Ast.ExInt (_loc, (neg_string n)) + | Ast.ExInt32 (_, n) -> Ast.ExInt32 (_loc, (neg_string n)) + | Ast.ExInt64 (_, n) -> Ast.ExInt64 (_loc, (neg_string n)) + | Ast.ExNativeInt (_, n) -> Ast.ExNativeInt (_loc, (neg_string n)) + | Ast.ExFlo (_, n) -> Ast.ExFlo (_loc, (neg_string n)) | _ -> - Ast.ExApp (_loc, Ast.ExId (_loc, Ast.IdLid (_loc, "~" ^ f)), - arg) + Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdLid (_loc, ("~" ^ f))))), arg) let mklistexp _loc last = let rec loop top = @@ -382,15 +382,15 @@ Very old (no more supported) syntax:\n\ | [] -> (match last with | Some e -> e - | None -> Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) + | None -> Ast.ExId (_loc, (Ast.IdUid (_loc, "[]")))) | e1 :: el -> let _loc = if top then _loc else Loc.merge (Ast.loc_of_expr e1) _loc in Ast.ExApp (_loc, - Ast.ExApp (_loc, Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - e1), - loop false el) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), e1)), + (loop false el)) in loop true let mkassert _loc = @@ -424,13 +424,13 @@ Very old (no more supported) syntax:\n\ let module_type_app mt1 mt2 = match (mt1, mt2) with | (Ast.MtId (_loc, i1), Ast.MtId (_, i2)) -> - Ast.MtId (_loc, Ast.IdApp (_loc, i1, i2)) + Ast.MtId (_loc, (Ast.IdApp (_loc, i1, i2))) | _ -> raise Stream.Failure let module_type_acc mt1 mt2 = match (mt1, mt2) with | (Ast.MtId (_loc, i1), Ast.MtId (_, i2)) -> - Ast.MtId (_loc, Ast.IdAcc (_loc, i1, i2)) + Ast.MtId (_loc, (Ast.IdAcc (_loc, i1, i2))) | _ -> raise Stream.Failure let bigarray_get _loc arr arg = @@ -443,47 +443,49 @@ Very old (no more supported) syntax:\n\ match coords with | [ c1 ] -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Array1"), - Ast.IdLid (_loc, "get")))), - arr), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Array1")), + (Ast.IdLid (_loc, "get")))))))), + arr)), c1) | [ c1; c2 ] -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Array2"), - Ast.IdLid (_loc, "get")))), - arr), - c1), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Array2")), + (Ast.IdLid (_loc, "get")))))))), + arr)), + c1)), c2) | [ c1; c2; c3 ] -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Array3"), - Ast.IdLid (_loc, "get")))), - arr), - c1), - c2), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Array3")), + (Ast.IdLid (_loc, "get")))))))), + arr)), + c1)), + c2)), c3) | (* | coords -> <:expr< Bigarray.Genarray.get $arr$ [| $list:coords$ |] >> ] *) coords -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Genarray"), - Ast.IdLid (_loc, "get")))), - arr), - Ast.ExArr (_loc, Ast.exSem_of_list coords)) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Genarray")), + (Ast.IdLid (_loc, "get")))))))), + arr)), + (Ast.ExArr (_loc, (Ast.exSem_of_list coords)))) let bigarray_set _loc var newval = match var with @@ -497,14 +499,15 @@ Very old (no more supported) syntax:\n\ c1) -> Some (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Array1"), - Ast.IdLid (_loc, "set")))), - arr), - c1), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Array1")), + (Ast.IdLid (_loc, "set")))))))), + arr)), + c1)), newval)) | Ast.ExApp (_, (Ast.ExApp (_, @@ -518,16 +521,18 @@ Very old (no more supported) syntax:\n\ c2) -> Some (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Array2"), - Ast.IdLid (_loc, "set")))), - arr), - c1), - c2), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Array2")), + (Ast.IdLid (_loc, "set")))))))), + arr)), + c1)), + c2)), newval)) | Ast.ExApp (_, (Ast.ExApp (_, @@ -543,18 +548,20 @@ Very old (no more supported) syntax:\n\ c3) -> Some (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Array3"), - Ast.IdLid (_loc, "set")))), - arr), - c1), - c2), - c3), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Array3")), + (Ast.IdLid (_loc, "set")))))))), + arr)), + c1)), + c2)), + c3)), newval)) | Ast.ExApp (_, (Ast.ExApp (_, @@ -566,14 +573,15 @@ Very old (no more supported) syntax:\n\ (Ast.ExArr (_, coords))) -> Some (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Bigarray"), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Genarray"), - Ast.IdLid (_loc, "set")))), - arr), - Ast.ExArr (_loc, coords)), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Bigarray")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Genarray")), + (Ast.IdLid (_loc, "set")))))))), + arr)), + (Ast.ExArr (_loc, coords)))), newval)) | _ -> None @@ -597,7 +605,7 @@ Very old (no more supported) syntax:\n\ | Some (((KEYWORD x | SYMBOL x), ti)) when p x -> (Stream.junk __strm; let _loc = Gram.token_location ti - in Ast.ExId (_loc, Ast.IdLid (_loc, x))) + in Ast.ExId (_loc, (Ast.IdLid (_loc, x)))) | _ -> raise Stream.Failure) let _ = @@ -708,7 +716,7 @@ Very old (no more supported) syntax:\n\ | Some ((ANTIQUOT ((("list" as n)), s), ti)) -> (Stream.junk __strm; let _loc = Gram.token_location ti - in Ast.ExAnt (_loc, mk_anti ~c: "expr;" n s)) + in Ast.ExAnt (_loc, (mk_anti ~c: "expr;" n s))) | _ -> symb1 __strm in let rec kont al (__strm : _ Stream.t) = match Stream.peek __strm with @@ -987,7 +995,8 @@ Very old (no more supported) syntax:\n\ (fun _ (p : 'package_type) _ (e : 'expr) _ _ (_loc : Gram.Loc.t) -> (Ast.MePkg (_loc, - Ast.ExTyc (_loc, e, Ast.TyPkg (_loc, p))) : + (Ast.ExTyc (_loc, e, + (Ast.TyPkg (_loc, p))))) : 'module_expr)))); ([ Gram.Skeyword "("; Gram.Snterm @@ -1045,7 +1054,7 @@ Very old (no more supported) syntax:\n\ ((("" | "mexp" | "anti" | "list" as n)), s) -> (Ast.MeAnt (_loc, - mk_anti ~c: "module_expr" n s) : + (mk_anti ~c: "module_expr" n s)) : 'module_expr) | _ -> assert false))) ]) ])) ()); @@ -1084,7 +1093,7 @@ Very old (no more supported) syntax:\n\ ((("" | "stri" | "anti" | "list" as n)), s) -> (Ast.StAnt (_loc, - mk_anti ~c: "str_item" n s) : + (mk_anti ~c: "str_item" n s)) : 'str_item) | _ -> assert false))); ([ Gram.Skeyword "class"; Gram.Skeyword "type"; @@ -1205,7 +1214,7 @@ Very old (no more supported) syntax:\n\ (fun (i : 'type_longident) _ (t : 'constructor_declaration) _ (_loc : Gram.Loc.t) -> - (Ast.StExc (_loc, t, Ast.OSome i) : + (Ast.StExc (_loc, t, (Ast.OSome i)) : 'str_item)))); ([ Gram.Skeyword "exception"; Gram.Snterm @@ -1307,7 +1316,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" as n)), m) -> - (Ast.MbColEq (_loc, mk_anti n m, mt, me) : + (Ast.MbColEq (_loc, (mk_anti n m), mt, + me) : 'module_binding) | _ -> assert false))); ([ Gram.Stoken @@ -1321,7 +1331,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" as n)), s) -> (Ast.MbAnt (_loc, - mk_anti ~c: "module_binding" n s) : + (mk_anti ~c: "module_binding" n s)) : 'module_binding) | _ -> assert false))); ([ Gram.Stoken @@ -1340,7 +1350,7 @@ Very old (no more supported) syntax:\n\ n)), s) -> (Ast.MbAnt (_loc, - mk_anti ~c: "module_binding" n s) : + (mk_anti ~c: "module_binding" n s)) : 'module_binding) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "and"; Gram.Sself ], @@ -1441,7 +1451,7 @@ Very old (no more supported) syntax:\n\ ((("" | "mtyp" | "anti" | "list" as n)), s) -> (Ast.MtAnt (_loc, - mk_anti ~c: "module_type" n s) : + (mk_anti ~c: "module_type" n s)) : 'module_type) | _ -> assert false))) ]) ])) ()); @@ -1504,7 +1514,7 @@ Very old (no more supported) syntax:\n\ (a_UIDENT : 'a_UIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (i : 'a_UIDENT) _ _ (_loc : Gram.Loc.t) -> - (Ast.SgMty (_loc, i, Ast.MtNil _loc) : + (Ast.SgMty (_loc, i, (Ast.MtNil _loc)) : 'sig_item)))); ([ Gram.Skeyword "module"; Gram.Skeyword "type"; Gram.Snterm @@ -1596,7 +1606,7 @@ Very old (no more supported) syntax:\n\ ((("" | "sigi" | "anti" | "list" as n)), s) -> (Ast.SgAnt (_loc, - mk_anti ~c: "sig_item" n s) : + (mk_anti ~c: "sig_item" n s)) : 'sig_item) | _ -> assert false))) ]) ])) ()); @@ -1676,7 +1686,7 @@ Very old (no more supported) syntax:\n\ as n)), s) -> (Ast.MbAnt (_loc, - mk_anti ~c: "module_binding" n s) : + (mk_anti ~c: "module_binding" n s)) : 'module_rec_declaration) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "and"; Gram.Sself ], @@ -1737,8 +1747,8 @@ Very old (no more supported) syntax:\n\ | ANTIQUOT ((("" | "typ" | "anti" as n)), s) -> (Ast.WcTyS (_loc, - Ast.TyAnt (_loc, - mk_anti ~c: "ctyp" n s), + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s))), t) : 'with_constr) | _ -> assert false))); @@ -1788,8 +1798,8 @@ Very old (no more supported) syntax:\n\ | ANTIQUOT ((("" | "typ" | "anti" as n)), s) -> (Ast.WcTyp (_loc, - Ast.TyAnt (_loc, - mk_anti ~c: "ctyp" n s), + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s))), t) : 'with_constr) | _ -> assert false))); @@ -1821,7 +1831,7 @@ Very old (no more supported) syntax:\n\ as n)), s) -> (Ast.WcAnt (_loc, - mk_anti ~c: "with_constr" n s) : + (mk_anti ~c: "with_constr" n s)) : 'with_constr) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "and"; Gram.Sself ], @@ -1860,7 +1870,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (seq : 'do_sequence) _ (e : 'sequence) _ (_loc : Gram.Loc.t) -> - (Ast.ExWhi (_loc, mksequence' _loc e, seq) : + (Ast.ExWhi (_loc, (mksequence' _loc e), seq) : 'expr)))); ([ Gram.Skeyword "for"; Gram.Snterm @@ -1885,8 +1895,8 @@ Very old (no more supported) syntax:\n\ (fun (seq : 'do_sequence) _ (e2 : 'sequence) (df : 'direction_flag) (e1 : 'sequence) _ (i : 'a_LIDENT) _ (_loc : Gram.Loc.t) -> - (Ast.ExFor (_loc, i, mksequence' _loc e1, - mksequence' _loc e2, df, seq) : + (Ast.ExFor (_loc, i, (mksequence' _loc e1), + (mksequence' _loc e2), df, seq) : 'expr)))); ([ Gram.Skeyword "do"; Gram.Snterm @@ -1913,7 +1923,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (a : 'match_case) _ (e : 'sequence) _ (_loc : Gram.Loc.t) -> - (Ast.ExTry (_loc, mksequence' _loc e, a) : + (Ast.ExTry (_loc, (mksequence' _loc e), a) : 'expr)))); ([ Gram.Skeyword "match"; Gram.Snterm @@ -1926,7 +1936,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (a : 'match_case) _ (e : 'sequence) _ (_loc : Gram.Loc.t) -> - (Ast.ExMat (_loc, mksequence' _loc e, a) : + (Ast.ExMat (_loc, (mksequence' _loc e), a) : 'expr)))); ([ Gram.Skeyword "fun"; Gram.Snterm @@ -1937,15 +1947,16 @@ Very old (no more supported) syntax:\n\ (e : 'expr)))); ([ Gram.Skeyword "fun"; Gram.Skeyword "["; Gram.Slist0sep - (Gram.Snterm - (Gram.Entry.obj - (match_case0 : 'match_case0 Gram.Entry.t)), - Gram.Skeyword "|"); + ((Gram.Snterm + (Gram.Entry.obj + (match_case0 : + 'match_case0 Gram.Entry.t))), + (Gram.Skeyword "|")); Gram.Skeyword "]" ], (Gram.Action.mk (fun _ (a : 'match_case0 list) _ _ (_loc : Gram.Loc.t) -> - (Ast.ExFun (_loc, Ast.mcOr_of_list a) : + (Ast.ExFun (_loc, (Ast.mcOr_of_list a)) : 'expr)))); ([ Gram.Skeyword "let"; Gram.Skeyword "open"; Gram.Snterm @@ -2013,7 +2024,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e2 : 'expr) (op : 'infixop6) (e1 : 'expr) (_loc : Gram.Loc.t) -> - (Ast.ExApp (_loc, Ast.ExApp (_loc, op, e1), + (Ast.ExApp (_loc, (Ast.ExApp (_loc, op, e1)), e2) : 'expr)))) ]); ((Some "&&"), (Some Camlp4.Sig.Grammar.RightA), @@ -2025,7 +2036,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e2 : 'expr) (op : 'infixop5) (e1 : 'expr) (_loc : Gram.Loc.t) -> - (Ast.ExApp (_loc, Ast.ExApp (_loc, op, e1), + (Ast.ExApp (_loc, (Ast.ExApp (_loc, op, e1)), e2) : 'expr)))) ]); ((Some "<"), (Some Camlp4.Sig.Grammar.LeftA), @@ -2037,7 +2048,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e2 : 'expr) (op : 'infixop0) (e1 : 'expr) (_loc : Gram.Loc.t) -> - (Ast.ExApp (_loc, Ast.ExApp (_loc, op, e1), + (Ast.ExApp (_loc, (Ast.ExApp (_loc, op, e1)), e2) : 'expr)))) ]); ((Some "^"), (Some Camlp4.Sig.Grammar.RightA), @@ -2049,7 +2060,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e2 : 'expr) (op : 'infixop1) (e1 : 'expr) (_loc : Gram.Loc.t) -> - (Ast.ExApp (_loc, Ast.ExApp (_loc, op, e1), + (Ast.ExApp (_loc, (Ast.ExApp (_loc, op, e1)), e2) : 'expr)))) ]); ((Some "+"), (Some Camlp4.Sig.Grammar.LeftA), @@ -2061,7 +2072,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e2 : 'expr) (op : 'infixop2) (e1 : 'expr) (_loc : Gram.Loc.t) -> - (Ast.ExApp (_loc, Ast.ExApp (_loc, op, e1), + (Ast.ExApp (_loc, (Ast.ExApp (_loc, op, e1)), e2) : 'expr)))) ]); ((Some "*"), (Some Camlp4.Sig.Grammar.LeftA), @@ -2073,7 +2084,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e2 : 'expr) (op : 'infixop3) (e1 : 'expr) (_loc : Gram.Loc.t) -> - (Ast.ExApp (_loc, Ast.ExApp (_loc, op, e1), + (Ast.ExApp (_loc, (Ast.ExApp (_loc, op, e1)), e2) : 'expr)))); ([ Gram.Sself; Gram.Skeyword "mod"; Gram.Sself ], @@ -2081,9 +2092,10 @@ Very old (no more supported) syntax:\n\ (fun (e2 : 'expr) _ (e1 : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "mod")), - e1), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "mod")))), + e1)), e2) : 'expr)))); ([ Gram.Sself; Gram.Skeyword "lxor"; Gram.Sself ], @@ -2091,10 +2103,10 @@ Very old (no more supported) syntax:\n\ (fun (e2 : 'expr) _ (e1 : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdLid (_loc, "lxor")), - e1), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "lxor")))), + e1)), e2) : 'expr)))); ([ Gram.Sself; Gram.Skeyword "lor"; Gram.Sself ], @@ -2102,9 +2114,10 @@ Very old (no more supported) syntax:\n\ (fun (e2 : 'expr) _ (e1 : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "lor")), - e1), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "lor")))), + e1)), e2) : 'expr)))); ([ Gram.Sself; Gram.Skeyword "land"; Gram.Sself ], @@ -2112,10 +2125,10 @@ Very old (no more supported) syntax:\n\ (fun (e2 : 'expr) _ (e1 : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdLid (_loc, "land")), - e1), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "land")))), + e1)), e2) : 'expr)))) ]); ((Some "**"), (Some Camlp4.Sig.Grammar.RightA), @@ -2127,7 +2140,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e2 : 'expr) (op : 'infixop4) (e1 : 'expr) (_loc : Gram.Loc.t) -> - (Ast.ExApp (_loc, Ast.ExApp (_loc, op, e1), + (Ast.ExApp (_loc, (Ast.ExApp (_loc, op, e1)), e2) : 'expr)))); ([ Gram.Sself; Gram.Skeyword "lsr"; Gram.Sself ], @@ -2135,9 +2148,10 @@ Very old (no more supported) syntax:\n\ (fun (e2 : 'expr) _ (e1 : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "lsr")), - e1), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "lsr")))), + e1)), e2) : 'expr)))); ([ Gram.Sself; Gram.Skeyword "lsl"; Gram.Sself ], @@ -2145,9 +2159,10 @@ Very old (no more supported) syntax:\n\ (fun (e2 : 'expr) _ (e1 : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "lsl")), - e1), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "lsl")))), + e1)), e2) : 'expr)))); ([ Gram.Sself; Gram.Skeyword "asr"; Gram.Sself ], @@ -2155,9 +2170,10 @@ Very old (no more supported) syntax:\n\ (fun (e2 : 'expr) _ (e1 : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "asr")), - e1), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "asr")))), + e1)), e2) : 'expr)))) ]); ((Some "unary minus"), (Some Camlp4.Sig.Grammar.NonA), @@ -2199,7 +2215,8 @@ Very old (no more supported) syntax:\n\ (a_LIDENT : 'a_LIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (i : 'a_LIDENT) _ (_loc : Gram.Loc.t) -> - (Ast.ExOlb (_loc, i, Ast.ExNil _loc) : 'expr)))); + (Ast.ExOlb (_loc, i, (Ast.ExNil _loc)) : + 'expr)))); ([ Gram.Skeyword "?"; Gram.Snterm (Gram.Entry.obj @@ -2236,7 +2253,8 @@ Very old (no more supported) syntax:\n\ (a_LIDENT : 'a_LIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (i : 'a_LIDENT) _ (_loc : Gram.Loc.t) -> - (Ast.ExLab (_loc, i, Ast.ExNil _loc) : 'expr)))); + (Ast.ExLab (_loc, i, (Ast.ExNil _loc)) : + 'expr)))); ([ Gram.Skeyword "~"; Gram.Snterm (Gram.Entry.obj @@ -2293,7 +2311,8 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e : 'expr) _ (_loc : Gram.Loc.t) -> (Ast.ExAcc (_loc, e, - Ast.ExId (_loc, Ast.IdLid (_loc, "val"))) : + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "val"))))) : 'expr)))) ]); ((Some "simple"), None, [ ([ Gram.Skeyword "("; Gram.Skeyword "module"; @@ -2309,7 +2328,7 @@ Very old (no more supported) syntax:\n\ (fun _ (pt : 'package_type) _ (me : 'module_expr) _ _ (_loc : Gram.Loc.t) -> - (Ast.ExPkg (_loc, Ast.MeTyc (_loc, me, pt)) : + (Ast.ExPkg (_loc, (Ast.MeTyc (_loc, me, pt))) : 'expr)))); ([ Gram.Skeyword "("; Gram.Skeyword "module"; Gram.Snterm @@ -2323,7 +2342,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "begin"; Gram.Skeyword "end" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.ExId (_loc, Ast.IdUid (_loc, "()")) : + (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))) : 'expr)))); ([ Gram.Skeyword "begin"; Gram.Snterm @@ -2345,7 +2364,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (t : 'ctyp) _ (e : 'expr) _ (_loc : Gram.Loc.t) -> - (Ast.ExCoe (_loc, e, Ast.TyNil _loc, t) : + (Ast.ExCoe (_loc, e, (Ast.TyNil _loc), t) : 'expr)))); ([ Gram.Skeyword "("; Gram.Sself; Gram.Skeyword ":"; Gram.Snterm @@ -2381,7 +2400,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (el : 'comma_expr) _ (e : 'expr) _ (_loc : Gram.Loc.t) -> - (Ast.ExTup (_loc, Ast.ExCom (_loc, e, el)) : + (Ast.ExTup (_loc, (Ast.ExCom (_loc, e, el))) : 'expr)))); ([ Gram.Skeyword "("; Gram.Sself; Gram.Skeyword ":"; Gram.Snterm @@ -2394,7 +2413,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "("; Gram.Skeyword ")" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.ExId (_loc, Ast.IdUid (_loc, "()")) : + (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))) : 'expr)))); ([ Gram.Skeyword "{<"; Gram.Snterm @@ -2409,7 +2428,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "{<"; Gram.Skeyword ">}" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.ExOvr (_loc, Ast.RbNil _loc) : 'expr)))); + (Ast.ExOvr (_loc, (Ast.RbNil _loc)) : 'expr)))); ([ Gram.Skeyword "{"; Gram.Skeyword "("; Gram.Sself; Gram.Skeyword ")"; Gram.Skeyword "with"; Gram.Snterm @@ -2430,7 +2449,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (el : 'label_expr_list) _ (_loc : Gram.Loc.t) -> - (Ast.ExRec (_loc, el, Ast.ExNil _loc) : + (Ast.ExRec (_loc, el, (Ast.ExNil _loc)) : 'expr)))); ([ Gram.Skeyword "[|"; Gram.Snterm @@ -2443,7 +2462,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "[|"; Gram.Skeyword "|]" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.ExArr (_loc, Ast.ExNil _loc) : 'expr)))); + (Ast.ExArr (_loc, (Ast.ExNil _loc)) : 'expr)))); ([ Gram.Skeyword "["; Gram.Snterm (Gram.Entry.obj @@ -2454,7 +2473,7 @@ Very old (no more supported) syntax:\n\ (fun _ (mk_list : 'sem_expr_for_list) _ (_loc : Gram.Loc.t) -> (mk_list - (Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) : + (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]")))) : 'expr)))); ([ Gram.Skeyword "["; Gram.Snterm @@ -2469,7 +2488,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "["; Gram.Skeyword "]" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.ExId (_loc, Ast.IdUid (_loc, "[]")) : + (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]"))) : 'expr)))); ([ Gram.Skeyword "`"; Gram.Snterm @@ -2552,8 +2571,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("seq" as n)), s) -> (Ast.ExSeq (_loc, - Ast.ExAnt (_loc, - mk_anti ~c: "expr" n s)) : + (Ast.ExAnt (_loc, + (mk_anti ~c: "expr" n s)))) : 'expr) | _ -> assert false))); ([ Gram.Stoken @@ -2567,8 +2586,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("tup" as n)), s) -> (Ast.ExTup (_loc, - Ast.ExAnt (_loc, - mk_anti ~c: "expr" n s)) : + (Ast.ExAnt (_loc, + (mk_anti ~c: "expr" n s)))) : 'expr) | _ -> assert false))); ([ Gram.Stoken @@ -2582,7 +2601,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("`bool" as n)), s) -> (Ast.ExId (_loc, - Ast.IdAnt (_loc, mk_anti n s)) : + (Ast.IdAnt (_loc, (mk_anti n s)))) : 'expr) | _ -> assert false))); ([ Gram.Stoken @@ -2597,7 +2616,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("exp" | "" | "anti" as n)), s) -> - (Ast.ExAnt (_loc, mk_anti ~c: "expr" n s) : + (Ast.ExAnt (_loc, + (mk_anti ~c: "expr" n s)) : 'expr) | _ -> assert false))); ([ Gram.Stoken @@ -2617,7 +2637,12 @@ Very old (no more supported) syntax:\n\ ((fun () -> (None, [ (None, None, - [ ([ Gram.Stry + [ ([ Gram.Skeyword "done" ], + (Gram.Action.mk + (fun _ (_loc : Gram.Loc.t) -> + (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))) : + 'do_sequence)))); + ([ Gram.Stry (Gram.srules do_sequence [ ([ Gram.Snterm (Gram.Entry.obj @@ -2627,12 +2652,22 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (seq : 'sequence) (_loc : Gram.Loc.t) -> - (seq : 'e__2)))) ]) ], + (seq : 'e__3)))) ]) ], (Gram.Action.mk - (fun (seq : 'e__2) (_loc : Gram.Loc.t) -> + (fun (seq : 'e__3) (_loc : Gram.Loc.t) -> (seq : 'do_sequence)))); ([ Gram.Stry (Gram.srules do_sequence + [ ([ Gram.Skeyword "{"; Gram.Skeyword "}" ], + (Gram.Action.mk + (fun _ _ (_loc : Gram.Loc.t) -> + (() : 'e__2)))) ]) ], + (Gram.Action.mk + (fun _ (_loc : Gram.Loc.t) -> + (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))) : + 'do_sequence)))); + ([ Gram.Stry + (Gram.srules do_sequence [ ([ Gram.Skeyword "{"; Gram.Snterm (Gram.Entry.obj @@ -2656,15 +2691,15 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (x : Gram.Token.t) (_loc : Gram.Loc.t) -> - (Gram.Token.extract_string x : 'e__3)))); + (Gram.Token.extract_string x : 'e__4)))); ([ Gram.Skeyword "&" ], (Gram.Action.mk (fun (x : Gram.Token.t) (_loc : Gram.Loc.t) -> - (Gram.Token.extract_string x : 'e__3)))) ] ], + (Gram.Token.extract_string x : 'e__4)))) ] ], (Gram.Action.mk - (fun (x : 'e__3) (_loc : Gram.Loc.t) -> - (Ast.ExId (_loc, Ast.IdLid (_loc, x)) : + (fun (x : 'e__4) (_loc : Gram.Loc.t) -> + (Ast.ExId (_loc, (Ast.IdLid (_loc, x))) : 'infixop5)))) ]) ])) ()); Gram.extend (infixop6 : 'infixop6 Gram.Entry.t) @@ -2676,15 +2711,15 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (x : Gram.Token.t) (_loc : Gram.Loc.t) -> - (Gram.Token.extract_string x : 'e__4)))); + (Gram.Token.extract_string x : 'e__5)))); ([ Gram.Skeyword "or" ], (Gram.Action.mk (fun (x : Gram.Token.t) (_loc : Gram.Loc.t) -> - (Gram.Token.extract_string x : 'e__4)))) ] ], + (Gram.Token.extract_string x : 'e__5)))) ] ], (Gram.Action.mk - (fun (x : 'e__4) (_loc : Gram.Loc.t) -> - (Ast.ExId (_loc, Ast.IdLid (_loc, x)) : + (fun (x : 'e__5) (_loc : Gram.Loc.t) -> + (Ast.ExId (_loc, (Ast.IdLid (_loc, x))) : 'infixop6)))) ]) ])) ()); Gram.extend @@ -2698,10 +2733,23 @@ Very old (no more supported) syntax:\n\ (fun (e : 'expr) (_loc : Gram.Loc.t) -> (fun acc -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "::")), - e), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), + acc) : + 'sem_expr_for_list)))); + ([ Gram.Snterm + (Gram.Entry.obj (expr : 'expr Gram.Entry.t)); + Gram.Skeyword ";" ], + (Gram.Action.mk + (fun _ (e : 'expr) (_loc : Gram.Loc.t) -> + (fun acc -> + Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), acc) : 'sem_expr_for_list)))); ([ Gram.Snterm @@ -2712,11 +2760,11 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> (fun acc -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "::")), - e), - el acc) : + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), + (el acc)) : 'sem_expr_for_list)))) ]) ])) ()); Gram.extend (comma_expr : 'comma_expr Gram.Entry.t) @@ -2724,7 +2772,7 @@ Very old (no more supported) syntax:\n\ (None, [ (None, None, [ ([ Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top") ], (Gram.Action.mk (fun (e : 'expr) (_loc : Gram.Loc.t) -> @@ -2740,7 +2788,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.ExAnt (_loc, - mk_anti ~c: "expr," n s) : + (mk_anti ~c: "expr," n s)) : 'comma_expr) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword ","; Gram.Sself ], @@ -2801,7 +2849,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.ExAnt (_loc, - mk_anti ~c: "expr;" n s) : + (mk_anti ~c: "expr;" n s)) : 'sequence) | _ -> assert false))); ([ Gram.Skeyword "let"; Gram.Skeyword "open"; @@ -2826,7 +2874,8 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (el : 'sequence) _ (mb : 'module_binding0) (m : 'a_UIDENT) _ _ (_loc : Gram.Loc.t) -> - (Ast.ExLmd (_loc, m, mb, mksequence _loc el) : + (Ast.ExLmd (_loc, m, mb, + (mksequence _loc el)) : 'sequence)))); ([ Gram.Skeyword "let"; Gram.Skeyword "module"; Gram.Snterm @@ -2858,7 +2907,8 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (el : 'sequence) _ (bi : 'binding) (rf : 'opt_rec) _ (_loc : Gram.Loc.t) -> - (Ast.ExLet (_loc, rf, bi, mksequence _loc el) : + (Ast.ExLet (_loc, rf, bi, + (mksequence _loc el)) : 'sequence)))); ([ Gram.Skeyword "let"; Gram.Snterm @@ -2905,7 +2955,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "anti" as n)), s) -> (Ast.BiAnt (_loc, - mk_anti ~c: "binding" n s) : + (mk_anti ~c: "binding" n s)) : 'binding) | _ -> assert false))); ([ Gram.Stoken @@ -2922,8 +2972,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "anti" as n)), s) -> (Ast.BiEq (_loc, - Ast.PaAnt (_loc, - mk_anti ~c: "patt" n s), + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s))), e) : 'binding) | _ -> assert false))); @@ -2939,7 +2989,7 @@ Very old (no more supported) syntax:\n\ | ANTIQUOT ((("binding" | "list" as n)), s) -> (Ast.BiAnt (_loc, - mk_anti ~c: "binding" n s) : + (mk_anti ~c: "binding" n s)) : 'binding) | _ -> assert false))) ]) ])) ()); @@ -2978,14 +3028,14 @@ Very old (no more supported) syntax:\n\ (fun (e : 'fun_binding) (p : 'labeled_ipatt) (_loc : Gram.Loc.t) -> (Ast.ExFun (_loc, - Ast.McArr (_loc, p, Ast.ExNil _loc, e)) : + (Ast.McArr (_loc, p, (Ast.ExNil _loc), e))) : 'fun_binding)))); ([ Gram.Stry (Gram.srules fun_binding [ ([ Gram.Skeyword "("; Gram.Skeyword "type" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (() : 'e__5)))) ]); + (() : 'e__6)))) ]); Gram.Snterm (Gram.Entry.obj (a_LIDENT : 'a_LIDENT Gram.Entry.t)); @@ -3007,14 +3057,15 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e : 'expr) _ (p : 'ipatt) (_loc : Gram.Loc.t) -> - (Ast.McArr (_loc, p, Ast.ExNil _loc, e) : + (Ast.McArr (_loc, p, (Ast.ExNil _loc), e) : 'match_case)))); ([ Gram.Skeyword "["; Gram.Slist0sep - (Gram.Snterm - (Gram.Entry.obj - (match_case0 : 'match_case0 Gram.Entry.t)), - Gram.Skeyword "|"); + ((Gram.Snterm + (Gram.Entry.obj + (match_case0 : + 'match_case0 Gram.Entry.t))), + (Gram.Skeyword "|")); Gram.Skeyword "]" ], (Gram.Action.mk (fun _ (l : 'match_case0 list) _ @@ -3058,8 +3109,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "anti" as n)), s) -> (Ast.McArr (_loc, - Ast.PaAnt (_loc, - mk_anti ~c: "patt" n s), + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s))), w, e) : 'match_case0) | _ -> assert false))); @@ -3077,9 +3128,9 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "anti" as n)), s) -> (Ast.McArr (_loc, - Ast.PaAnt (_loc, - mk_anti ~c: "patt" n s), - Ast.ExNil _loc, e) : + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s))), + (Ast.ExNil _loc), e) : 'match_case0) | _ -> assert false))); ([ Gram.Stoken @@ -3093,7 +3144,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "anti" as n)), s) -> (Ast.McAnt (_loc, - mk_anti ~c: "match_case" n s) : + (mk_anti ~c: "match_case" n s)) : 'match_case0) | _ -> assert false))); ([ Gram.Stoken @@ -3109,7 +3160,7 @@ Very old (no more supported) syntax:\n\ | ANTIQUOT ((("match_case" | "list" as n)), s) -> (Ast.McAnt (_loc, - mk_anti ~c: "match_case" n s) : + (mk_anti ~c: "match_case" n s)) : 'match_case0) | _ -> assert false))) ]) ])) ()); @@ -3186,8 +3237,8 @@ Very old (no more supported) syntax:\n\ (fun (i : 'label_longident) (_loc : Gram.Loc.t) -> (Ast.RbEq (_loc, i, - Ast.ExId (_loc, - Ast.IdLid (_loc, lid_of_ident i))) : + (Ast.ExId (_loc, + (Ast.IdLid (_loc, (lid_of_ident i)))))) : 'label_expr)))); ([ Gram.Snterm (Gram.Entry.obj @@ -3211,7 +3262,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.RbAnt (_loc, - mk_anti ~c: "rec_binding" n s) : + (mk_anti ~c: "rec_binding" n s)) : 'label_expr) | _ -> assert false))); ([ Gram.Stoken @@ -3228,8 +3279,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "anti" as n)), s) -> (Ast.RbEq (_loc, - Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s), + (Ast.IdAnt (_loc, + (mk_anti ~c: "ident" n s))), e) : 'label_expr) | _ -> assert false))); @@ -3244,7 +3295,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "anti" as n)), s) -> (Ast.RbAnt (_loc, - mk_anti ~c: "rec_binding" n s) : + (mk_anti ~c: "rec_binding" n s)) : 'label_expr) | _ -> assert false))); ([ Gram.Stoken @@ -3258,7 +3309,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("rec_binding" as n)), s) -> (Ast.RbAnt (_loc, - mk_anti ~c: "rec_binding" n s) : + (mk_anti ~c: "rec_binding" n s)) : 'label_expr) | _ -> assert false))) ]) ])) ()); @@ -3277,14 +3328,15 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun ((w, e) : 'fun_def_cont) (p : 'labeled_ipatt) (_loc : Gram.Loc.t) -> - (Ast.ExFun (_loc, Ast.McArr (_loc, p, w, e)) : + (Ast.ExFun (_loc, + (Ast.McArr (_loc, p, w, e))) : 'fun_def)))); ([ Gram.Stry (Gram.srules fun_def [ ([ Gram.Skeyword "("; Gram.Skeyword "type" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (() : 'e__6)))) ]); + (() : 'e__7)))) ]); Gram.Snterm (Gram.Entry.obj (a_LIDENT : 'a_LIDENT Gram.Entry.t)); @@ -3329,14 +3381,14 @@ Very old (no more supported) syntax:\n\ (p : 'labeled_ipatt) (_loc : Gram.Loc.t) -> (((Ast.ExNil _loc), (Ast.ExFun (_loc, - Ast.McArr (_loc, p, w, e)))) : + (Ast.McArr (_loc, p, w, e))))) : 'fun_def_cont)))); ([ Gram.Stry (Gram.srules fun_def_cont [ ([ Gram.Skeyword "("; Gram.Skeyword "type" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (() : 'e__7)))) ]); + (() : 'e__8)))) ]); Gram.Snterm (Gram.Entry.obj (a_LIDENT : 'a_LIDENT Gram.Entry.t)); @@ -3373,14 +3425,15 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun ((w, e) : 'fun_def_cont) (p : 'labeled_ipatt) (_loc : Gram.Loc.t) -> - (Ast.ExFun (_loc, Ast.McArr (_loc, p, w, e)) : + (Ast.ExFun (_loc, + (Ast.McArr (_loc, p, w, e))) : 'fun_def_cont_no_when)))); ([ Gram.Stry (Gram.srules fun_def_cont_no_when [ ([ Gram.Skeyword "("; Gram.Skeyword "type" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (() : 'e__8)))) ]); + (() : 'e__9)))) ]); Gram.Snterm (Gram.Entry.obj (a_LIDENT : 'a_LIDENT Gram.Entry.t)); @@ -3448,8 +3501,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "lid" as n)), i) -> - (Ast.PaOlb (_loc, mk_anti n i, - Ast.PaNil _loc) : + (Ast.PaOlb (_loc, (mk_anti n i), + (Ast.PaNil _loc)) : 'patt) | _ -> assert false))); ([ Gram.Skeyword "?"; @@ -3461,7 +3514,7 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | LIDENT i -> - (Ast.PaOlb (_loc, i, Ast.PaNil _loc) : + (Ast.PaOlb (_loc, i, (Ast.PaNil _loc)) : 'patt) | _ -> assert false))); ([ Gram.Skeyword "?"; @@ -3513,7 +3566,7 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | LIDENT i -> - (Ast.PaLab (_loc, i, Ast.PaNil _loc) : + (Ast.PaLab (_loc, i, (Ast.PaNil _loc)) : 'patt) | _ -> assert false))); ([ Gram.Skeyword "~"; @@ -3527,8 +3580,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "lid" as n)), i) -> - (Ast.PaLab (_loc, mk_anti n i, - Ast.PaNil _loc) : + (Ast.PaLab (_loc, (mk_anti n i), + (Ast.PaNil _loc)) : 'patt) | _ -> assert false))); ([ Gram.Skeyword "~"; @@ -3543,7 +3596,7 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "lid" as n)), i) -> - (Ast.PaLab (_loc, mk_anti n i, p) : + (Ast.PaLab (_loc, (mk_anti n i), p) : 'patt) | _ -> assert false))); ([ Gram.Stoken @@ -3595,7 +3648,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (pl : 'comma_patt) _ (p : 'patt) _ (_loc : Gram.Loc.t) -> - (Ast.PaTup (_loc, Ast.PaCom (_loc, p, pl)) : + (Ast.PaTup (_loc, (Ast.PaCom (_loc, p, pl))) : 'patt)))); ([ Gram.Skeyword "("; Gram.Sself; Gram.Skeyword "as"; Gram.Sself; Gram.Skeyword ")" ], @@ -3618,7 +3671,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "("; Gram.Skeyword ")" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.PaId (_loc, Ast.IdUid (_loc, "()")) : + (Ast.PaId (_loc, (Ast.IdUid (_loc, "()"))) : 'patt)))); ([ Gram.Skeyword "{"; Gram.Snterm @@ -3641,7 +3694,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "[|"; Gram.Skeyword "|]" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.PaArr (_loc, Ast.PaNil _loc) : 'patt)))); + (Ast.PaArr (_loc, (Ast.PaNil _loc)) : 'patt)))); ([ Gram.Skeyword "["; Gram.Snterm (Gram.Entry.obj @@ -3652,7 +3705,7 @@ Very old (no more supported) syntax:\n\ (fun _ (mk_list : 'sem_patt_for_list) _ (_loc : Gram.Loc.t) -> (mk_list - (Ast.PaId (_loc, Ast.IdUid (_loc, "[]"))) : + (Ast.PaId (_loc, (Ast.IdUid (_loc, "[]")))) : 'patt)))); ([ Gram.Skeyword "["; Gram.Snterm @@ -3667,7 +3720,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "["; Gram.Skeyword "]" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.PaId (_loc, Ast.IdUid (_loc, "[]")) : + (Ast.PaId (_loc, (Ast.IdUid (_loc, "[]"))) : 'patt)))); ([ Gram.Skeyword "-"; Gram.Snterm @@ -3675,14 +3728,14 @@ Very old (no more supported) syntax:\n\ (a_FLOAT : 'a_FLOAT Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_FLOAT) _ (_loc : Gram.Loc.t) -> - (Ast.PaFlo (_loc, neg_string s) : 'patt)))); + (Ast.PaFlo (_loc, (neg_string s)) : 'patt)))); ([ Gram.Skeyword "-"; Gram.Snterm (Gram.Entry.obj (a_NATIVEINT : 'a_NATIVEINT Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_NATIVEINT) _ (_loc : Gram.Loc.t) -> - (Ast.PaNativeInt (_loc, neg_string s) : + (Ast.PaNativeInt (_loc, (neg_string s)) : 'patt)))); ([ Gram.Skeyword "-"; Gram.Snterm @@ -3690,20 +3743,20 @@ Very old (no more supported) syntax:\n\ (a_INT64 : 'a_INT64 Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_INT64) _ (_loc : Gram.Loc.t) -> - (Ast.PaInt64 (_loc, neg_string s) : 'patt)))); + (Ast.PaInt64 (_loc, (neg_string s)) : 'patt)))); ([ Gram.Skeyword "-"; Gram.Snterm (Gram.Entry.obj (a_INT32 : 'a_INT32 Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_INT32) _ (_loc : Gram.Loc.t) -> - (Ast.PaInt32 (_loc, neg_string s) : 'patt)))); + (Ast.PaInt32 (_loc, (neg_string s)) : 'patt)))); ([ Gram.Skeyword "-"; Gram.Snterm (Gram.Entry.obj (a_INT : 'a_INT Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_INT) _ (_loc : Gram.Loc.t) -> - (Ast.PaInt (_loc, neg_string s) : 'patt)))); + (Ast.PaInt (_loc, (neg_string s)) : 'patt)))); ([ Gram.Snterm (Gram.Entry.obj (a_CHAR : 'a_CHAR Gram.Entry.t)) ], (Gram.Action.mk @@ -3760,7 +3813,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("`bool" as n)), s) -> (Ast.PaId (_loc, - Ast.IdAnt (_loc, mk_anti n s)) : + (Ast.IdAnt (_loc, (mk_anti n s)))) : 'patt) | _ -> assert false))); ([ Gram.Stoken @@ -3774,8 +3827,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("tup" as n)), s) -> (Ast.PaTup (_loc, - Ast.PaAnt (_loc, - mk_anti ~c: "patt" n s)) : + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s)))) : 'patt) | _ -> assert false))); ([ Gram.Stoken @@ -3790,7 +3843,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "pat" | "anti" as n)), s) -> - (Ast.PaAnt (_loc, mk_anti ~c: "patt" n s) : + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s)) : 'patt) | _ -> assert false))) ]) ])) ()); @@ -3814,7 +3868,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.PaAnt (_loc, - mk_anti ~c: "patt," n s) : + (mk_anti ~c: "patt," n s)) : 'comma_patt) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword ","; Gram.Sself ], @@ -3832,6 +3886,12 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (p : 'patt) (_loc : Gram.Loc.t) -> (p : 'sem_patt)))); + ([ Gram.Snterm + (Gram.Entry.obj (patt : 'patt Gram.Entry.t)); + Gram.Skeyword ";" ], + (Gram.Action.mk + (fun _ (p : 'patt) (_loc : Gram.Loc.t) -> + (p : 'sem_patt)))); ([ Gram.Stoken (((function | ANTIQUOT ("list", _) -> true @@ -3843,12 +3903,14 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.PaAnt (_loc, - mk_anti ~c: "patt;" n s) : + (mk_anti ~c: "patt;" n s)) : 'sem_patt) | _ -> assert false))); - ([ Gram.Sself; Gram.Skeyword ";"; Gram.Sself ], + ([ Gram.Snterm + (Gram.Entry.obj (patt : 'patt Gram.Entry.t)); + Gram.Skeyword ";"; Gram.Sself ], (Gram.Action.mk - (fun (p2 : 'sem_patt) _ (p1 : 'sem_patt) + (fun (p2 : 'sem_patt) _ (p1 : 'patt) (_loc : Gram.Loc.t) -> (Ast.PaSem (_loc, p1, p2) : 'sem_patt)))) ]) ])) ()); @@ -3863,10 +3925,23 @@ Very old (no more supported) syntax:\n\ (fun (p : 'patt) (_loc : Gram.Loc.t) -> (fun acc -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdUid (_loc, "::")), - p), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdUid (_loc, "::")))), + p)), + acc) : + 'sem_patt_for_list)))); + ([ Gram.Snterm + (Gram.Entry.obj (patt : 'patt Gram.Entry.t)); + Gram.Skeyword ";" ], + (Gram.Action.mk + (fun _ (p : 'patt) (_loc : Gram.Loc.t) -> + (fun acc -> + Ast.PaApp (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdUid (_loc, "::")))), + p)), acc) : 'sem_patt_for_list)))); ([ Gram.Snterm @@ -3877,11 +3952,11 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> (fun acc -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdUid (_loc, "::")), - p), - pl acc) : + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdUid (_loc, "::")))), + p)), + (pl acc)) : 'sem_patt_for_list)))) ]) ])) ()); Gram.extend (label_patt_list : 'label_patt_list Gram.Entry.t) @@ -3909,7 +3984,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ _ _ (p1 : 'label_patt) (_loc : Gram.Loc.t) -> - (Ast.PaSem (_loc, p1, Ast.PaAny _loc) : + (Ast.PaSem (_loc, p1, (Ast.PaAny _loc)) : 'label_patt_list)))); ([ Gram.Snterm (Gram.Entry.obj @@ -3918,7 +3993,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ _ (p1 : 'label_patt) (_loc : Gram.Loc.t) -> - (Ast.PaSem (_loc, p1, Ast.PaAny _loc) : + (Ast.PaSem (_loc, p1, (Ast.PaAny _loc)) : 'label_patt_list)))); ([ Gram.Snterm (Gram.Entry.obj @@ -3941,8 +4016,8 @@ Very old (no more supported) syntax:\n\ (fun (i : 'label_longident) (_loc : Gram.Loc.t) -> (Ast.PaEq (_loc, i, - Ast.PaId (_loc, - Ast.IdLid (_loc, lid_of_ident i))) : + (Ast.PaId (_loc, + (Ast.IdLid (_loc, (lid_of_ident i)))))) : 'label_patt)))); ([ Gram.Snterm (Gram.Entry.obj @@ -3966,7 +4041,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.PaAnt (_loc, - mk_anti ~c: "patt;" n s) : + (mk_anti ~c: "patt;" n s)) : 'label_patt) | _ -> assert false))); ([ Gram.Stoken @@ -3993,7 +4068,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "pat" | "anti" as n)), s) -> - (Ast.PaAnt (_loc, mk_anti ~c: "patt" n s) : + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s)) : 'label_patt) | _ -> assert false))) ]) ])) ()); @@ -4010,7 +4086,7 @@ Very old (no more supported) syntax:\n\ (a_LIDENT : 'a_LIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_LIDENT) (_loc : Gram.Loc.t) -> - (Ast.PaId (_loc, Ast.IdLid (_loc, s)) : + (Ast.PaId (_loc, (Ast.IdLid (_loc, s))) : 'ipatt)))); ([ Gram.Skeyword "("; Gram.Sself; Gram.Skeyword ","; Gram.Snterm @@ -4020,7 +4096,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (pl : 'comma_ipatt) _ (p : 'ipatt) _ (_loc : Gram.Loc.t) -> - (Ast.PaTup (_loc, Ast.PaCom (_loc, p, pl)) : + (Ast.PaTup (_loc, (Ast.PaCom (_loc, p, pl))) : 'ipatt)))); ([ Gram.Skeyword "("; Gram.Sself; Gram.Skeyword "as"; Gram.Sself; Gram.Skeyword ")" ], @@ -4043,7 +4119,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "("; Gram.Skeyword ")" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.PaId (_loc, Ast.IdUid (_loc, "()")) : + (Ast.PaId (_loc, (Ast.IdUid (_loc, "()"))) : 'ipatt)))); ([ Gram.Stoken (((function | QUOTATION _ -> true | _ -> false), @@ -4068,8 +4144,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("tup" as n)), s) -> (Ast.PaTup (_loc, - Ast.PaAnt (_loc, - mk_anti ~c: "patt" n s)) : + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s)))) : 'ipatt) | _ -> assert false))); ([ Gram.Stoken @@ -4084,7 +4160,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "pat" | "anti" as n)), s) -> - (Ast.PaAnt (_loc, mk_anti ~c: "patt" n s) : + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s)) : 'ipatt) | _ -> assert false))); ([ Gram.Skeyword "{"; @@ -4128,7 +4205,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.PaAnt (_loc, - mk_anti ~c: "patt," n s) : + (mk_anti ~c: "patt," n s)) : 'comma_ipatt) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword ","; Gram.Sself ], @@ -4202,7 +4279,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.PaAnt (_loc, - mk_anti ~c: "patt;" n s) : + (mk_anti ~c: "patt;" n s)) : 'label_ipatt) | _ -> assert false))); ([ Gram.Stoken @@ -4217,7 +4294,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "pat" | "anti" as n)), s) -> - (Ast.PaAnt (_loc, mk_anti ~c: "patt" n s) : + (Ast.PaAnt (_loc, + (mk_anti ~c: "patt" n s)) : 'label_ipatt) | _ -> assert false))) ]) ])) ()); @@ -4272,7 +4350,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctypand" n s) : + (mk_anti ~c: "ctypand" n s)) : 'type_declaration) | _ -> assert false))); ([ Gram.Stoken @@ -4287,7 +4365,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "typ" | "anti" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'type_declaration) | _ -> assert false))) ]) ])) ()); @@ -4448,7 +4527,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "typ" | "anti" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti n s) : + (Ast.TyAnt (_loc, (mk_anti n s)) : 'type_parameter) | _ -> assert false))) ]) ])) ()); @@ -4464,7 +4543,7 @@ Very old (no more supported) syntax:\n\ ((Some "private"), (Some Camlp4.Sig.Grammar.NonA), [ ([ Gram.Skeyword "private"; Gram.Snterml - (Gram.Entry.obj (ctyp : 'ctyp Gram.Entry.t), + ((Gram.Entry.obj (ctyp : 'ctyp Gram.Entry.t)), "alias") ], (Gram.Action.mk (fun (t : 'ctyp) _ (_loc : Gram.Loc.t) -> @@ -4533,7 +4612,7 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> (let t = Ast.TyApp (_loc, t1, t2) in - try Ast.TyId (_loc, Ast.ident_of_ctyp t) + try Ast.TyId (_loc, (Ast.ident_of_ctyp t)) with | Invalid_argument _ -> t : 'ctyp)))) ]); ((Some "."), (Some Camlp4.Sig.Grammar.LeftA), @@ -4543,8 +4622,9 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> (try Ast.TyId (_loc, - Ast.IdAcc (_loc, Ast.ident_of_ctyp t1, - Ast.ident_of_ctyp t2)) + (Ast.IdAcc (_loc, + (Ast.ident_of_ctyp t1), + (Ast.ident_of_ctyp t2)))) with | Invalid_argument s -> raise (Stream.Error s) : @@ -4643,7 +4723,8 @@ Very old (no more supported) syntax:\n\ Gram.Skeyword "]" ], (Gram.Action.mk (fun _ _ _ (_loc : Gram.Loc.t) -> - (Ast.TyVrnSup (_loc, Ast.TyNil _loc) : 'ctyp)))); + (Ast.TyVrnSup (_loc, (Ast.TyNil _loc)) : + 'ctyp)))); ([ Gram.Skeyword "["; Gram.Skeyword "="; Gram.Snterm (Gram.Entry.obj @@ -4666,7 +4747,7 @@ Very old (no more supported) syntax:\n\ ([ Gram.Skeyword "["; Gram.Skeyword "]" ], (Gram.Action.mk (fun _ _ (_loc : Gram.Loc.t) -> - (Ast.TySum (_loc, Ast.TyNil _loc) : 'ctyp)))); + (Ast.TySum (_loc, (Ast.TyNil _loc)) : 'ctyp)))); ([ Gram.Skeyword "("; Gram.Sself; Gram.Skeyword ")" ], (Gram.Action.mk (fun _ (t : 'ctyp) _ (_loc : Gram.Loc.t) -> @@ -4679,21 +4760,21 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (tl : 'star_ctyp) _ (t : 'ctyp) _ (_loc : Gram.Loc.t) -> - (Ast.TyTup (_loc, Ast.TySta (_loc, t, tl)) : + (Ast.TyTup (_loc, (Ast.TySta (_loc, t, tl))) : 'ctyp)))); ([ Gram.Snterm (Gram.Entry.obj (a_UIDENT : 'a_UIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (i : 'a_UIDENT) (_loc : Gram.Loc.t) -> - (Ast.TyId (_loc, Ast.IdUid (_loc, i)) : + (Ast.TyId (_loc, (Ast.IdUid (_loc, i))) : 'ctyp)))); ([ Gram.Snterm (Gram.Entry.obj (a_LIDENT : 'a_LIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (i : 'a_LIDENT) (_loc : Gram.Loc.t) -> - (Ast.TyId (_loc, Ast.IdLid (_loc, i)) : + (Ast.TyId (_loc, (Ast.IdLid (_loc, i))) : 'ctyp)))); ([ Gram.Stoken (((function | QUOTATION _ -> true | _ -> false), @@ -4718,8 +4799,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("id" as n)), s) -> (Ast.TyId (_loc, - Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s)) : + (Ast.IdAnt (_loc, + (mk_anti ~c: "ident" n s)))) : 'ctyp) | _ -> assert false))); ([ Gram.Stoken @@ -4733,8 +4814,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("tup" as n)), s) -> (Ast.TyTup (_loc, - Ast.TyAnt (_loc, - mk_anti ~c: "ctyp" n s)) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)))) : 'ctyp) | _ -> assert false))); ([ Gram.Stoken @@ -4749,7 +4830,8 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" | "typ" | "anti" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'ctyp) | _ -> assert false))); ([ Gram.Skeyword "_" ], @@ -4789,7 +4871,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp*" n s) : + (mk_anti ~c: "ctyp*" n s)) : 'star_ctyp) | _ -> assert false))); ([ Gram.Stoken @@ -4802,7 +4884,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'star_ctyp) | _ -> assert false))) ]) ])) ()); @@ -4817,7 +4900,7 @@ Very old (no more supported) syntax:\n\ (a_UIDENT : 'a_UIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_UIDENT) (_loc : Gram.Loc.t) -> - (Ast.TyId (_loc, Ast.IdUid (_loc, s)) : + (Ast.TyId (_loc, (Ast.IdUid (_loc, s))) : 'constructor_declarations)))); ([ Gram.Snterm (Gram.Entry.obj @@ -4831,7 +4914,8 @@ Very old (no more supported) syntax:\n\ (fun (t : 'constructor_arg_list) _ (s : 'a_UIDENT) (_loc : Gram.Loc.t) -> (Ast.TyOf (_loc, - Ast.TyId (_loc, Ast.IdUid (_loc, s)), t) : + (Ast.TyId (_loc, (Ast.IdUid (_loc, s)))), + t) : 'constructor_declarations)))); ([ Gram.Sself; Gram.Skeyword "|"; Gram.Sself ], (Gram.Action.mk @@ -4863,7 +4947,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp|" n s) : + (mk_anti ~c: "ctyp|" n s)) : 'constructor_declarations) | _ -> assert false))); ([ Gram.Stoken @@ -4876,7 +4960,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'constructor_declarations) | _ -> assert false))) ]) ])) ()); @@ -4891,7 +4976,7 @@ Very old (no more supported) syntax:\n\ (a_UIDENT : 'a_UIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (s : 'a_UIDENT) (_loc : Gram.Loc.t) -> - (Ast.TyId (_loc, Ast.IdUid (_loc, s)) : + (Ast.TyId (_loc, (Ast.IdUid (_loc, s))) : 'constructor_declaration)))); ([ Gram.Snterm (Gram.Entry.obj @@ -4905,7 +4990,8 @@ Very old (no more supported) syntax:\n\ (fun (t : 'constructor_arg_list) _ (s : 'a_UIDENT) (_loc : Gram.Loc.t) -> (Ast.TyOf (_loc, - Ast.TyId (_loc, Ast.IdUid (_loc, s)), t) : + (Ast.TyId (_loc, (Ast.IdUid (_loc, s)))), + t) : 'constructor_declaration)))); ([ Gram.Stoken (((function | QUOTATION _ -> true | _ -> false), @@ -4929,7 +5015,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'constructor_declaration) | _ -> assert false))) ]) ])) ()); @@ -4961,7 +5048,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctypand" n s) : + (mk_anti ~c: "ctypand" n s)) : 'constructor_arg_list) | _ -> assert false))) ]) ])) ()); @@ -5016,8 +5103,8 @@ Very old (no more supported) syntax:\n\ (fun (t : 'poly_type) _ _ (s : 'a_LIDENT) (_loc : Gram.Loc.t) -> (Ast.TyCol (_loc, - Ast.TyId (_loc, Ast.IdLid (_loc, s)), - Ast.TyMut (_loc, t)) : + (Ast.TyId (_loc, (Ast.IdLid (_loc, s)))), + (Ast.TyMut (_loc, t))) : 'label_declaration)))); ([ Gram.Snterm (Gram.Entry.obj @@ -5030,7 +5117,8 @@ Very old (no more supported) syntax:\n\ (fun (t : 'poly_type) _ (s : 'a_LIDENT) (_loc : Gram.Loc.t) -> (Ast.TyCol (_loc, - Ast.TyId (_loc, Ast.IdLid (_loc, s)), t) : + (Ast.TyId (_loc, (Ast.IdLid (_loc, s)))), + t) : 'label_declaration)))); ([ Gram.Stoken (((function | QUOTATION _ -> true | _ -> false), @@ -5055,7 +5143,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp;" n s) : + (mk_anti ~c: "ctyp;" n s)) : 'label_declaration) | _ -> assert false))); ([ Gram.Stoken @@ -5068,7 +5156,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'label_declaration) | _ -> assert false))) ]) ])) ()); @@ -5100,7 +5189,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (j : 'ident) _ (i : 'a_UIDENT) (_loc : Gram.Loc.t) -> - (Ast.IdAcc (_loc, Ast.IdUid (_loc, i), j) : + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, i)), j) : 'ident)))); ([ Gram.Stoken (((function @@ -5117,8 +5206,8 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAcc (_loc, - Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s), + (Ast.IdAnt (_loc, + (mk_anti ~c: "ident" n s))), i) : 'ident) | _ -> assert false))); @@ -5148,7 +5237,7 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s) : + (mk_anti ~c: "ident" n s)) : 'ident) | _ -> assert false))) ]) ])) ()); @@ -5169,7 +5258,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (l : 'module_longident) _ (m : 'a_UIDENT) (_loc : Gram.Loc.t) -> - (Ast.IdAcc (_loc, Ast.IdUid (_loc, m), l) : + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, m)), l) : 'module_longident)))); ([ Gram.Stoken (((function @@ -5185,7 +5274,7 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s) : + (mk_anti ~c: "ident" n s)) : 'module_longident) | _ -> assert false))) ]) ])) ()); @@ -5237,7 +5326,7 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s) : + (mk_anti ~c: "ident" n s)) : 'module_longident_with_app) | _ -> assert false))) ]) ])) ()); @@ -5262,7 +5351,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (l : 'module_longident_dot_lparen) _ (m : 'a_UIDENT) (_loc : Gram.Loc.t) -> - (Ast.IdAcc (_loc, Ast.IdUid (_loc, m), l) : + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, m)), l) : 'module_longident_dot_lparen)))); ([ Gram.Stoken (((function @@ -5279,7 +5368,7 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s) : + (mk_anti ~c: "ident" n s)) : 'module_longident_dot_lparen) | _ -> assert false))) ]) ])) ()); @@ -5329,7 +5418,7 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s) : + (mk_anti ~c: "ident" n s)) : 'type_longident) | _ -> assert false))) ]) ])) ()); @@ -5350,7 +5439,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (l : 'label_longident) _ (m : 'a_UIDENT) (_loc : Gram.Loc.t) -> - (Ast.IdAcc (_loc, Ast.IdUid (_loc, m), l) : + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, m)), l) : 'label_longident)))); ([ Gram.Stoken (((function @@ -5366,7 +5455,7 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s) : + (mk_anti ~c: "ident" n s)) : 'label_longident) | _ -> assert false))) ]) ])) ()); @@ -5450,7 +5539,7 @@ Very old (no more supported) syntax:\n\ ((("" | "cdcl" | "anti" | "list" as n)), s) -> (Ast.CeAnt (_loc, - mk_anti ~c: "class_expr" n s) : + (mk_anti ~c: "class_expr" n s)) : 'class_declaration) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "and"; Gram.Sself ], @@ -5515,7 +5604,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun ((i, ot) : 'class_name_and_param) (mv : 'opt_virtual) (_loc : Gram.Loc.t) -> - (Ast.CtCon (_loc, mv, Ast.IdLid (_loc, i), + (Ast.CtCon (_loc, mv, (Ast.IdLid (_loc, i)), ot) : 'class_info_for_class_type)))) ]) ])) ()); @@ -5535,7 +5624,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun ((i, ot) : 'class_name_and_param) (mv : 'opt_virtual) (_loc : Gram.Loc.t) -> - (Ast.CeCon (_loc, mv, Ast.IdLid (_loc, i), + (Ast.CeCon (_loc, mv, (Ast.IdLid (_loc, i)), ot) : 'class_info_for_class_expr)))) ]) ])) ()); @@ -5588,7 +5677,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp," n s) : + (mk_anti ~c: "ctyp," n s)) : 'comma_type_parameter) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword ","; Gram.Sself ], @@ -5636,7 +5725,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp," n s) : + (mk_anti ~c: "ctyp," n s)) : 'comma_ctyp) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword ","; Gram.Sself ], @@ -5698,7 +5787,7 @@ Very old (no more supported) syntax:\n\ ((Some "apply"), (Some Camlp4.Sig.Grammar.NonA), [ ([ Gram.Sself; Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "label") ], (Gram.Action.mk (fun (e : 'expr) (ce : 'class_expr) @@ -5765,7 +5854,7 @@ Very old (no more supported) syntax:\n\ | ANTIQUOT ((("" | "cexp" | "anti" as n)), s) -> (Ast.CeAnt (_loc, - mk_anti ~c: "class_expr" n s) : + (mk_anti ~c: "class_expr" n s)) : 'class_expr) | _ -> assert false))) ]) ])) ()); @@ -5783,7 +5872,7 @@ Very old (no more supported) syntax:\n\ (fun (ci : 'class_longident) (_loc : Gram.Loc.t) -> (Ast.CeCon (_loc, Ast.ViNil, ci, - Ast.TyNil _loc) : + (Ast.TyNil _loc)) : 'class_longident_and_param)))); ([ Gram.Snterm (Gram.Entry.obj @@ -5817,9 +5906,9 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (cst : 'class_str_item) (_loc : Gram.Loc.t) -> - (cst : 'e__9)))) ]) ], + (cst : 'e__10)))) ]) ], (Gram.Action.mk - (fun (l : 'e__9 list) (_loc : Gram.Loc.t) -> + (fun (l : 'e__10 list) (_loc : Gram.Loc.t) -> (Ast.crSem_of_list l : 'class_structure)))); ([ Gram.Stoken (((function @@ -5839,8 +5928,8 @@ Very old (no more supported) syntax:\n\ ((("" | "cst" | "anti" | "list" as n)), s) -> (Ast.CrSem (_loc, - Ast.CrAnt (_loc, - mk_anti ~c: "class_str_item" n s), + (Ast.CrAnt (_loc, + (mk_anti ~c: "class_str_item" n s))), cst) : 'class_structure) | _ -> assert false))); @@ -5858,7 +5947,7 @@ Very old (no more supported) syntax:\n\ ((("" | "cst" | "anti" | "list" as n)), s) -> (Ast.CrAnt (_loc, - mk_anti ~c: "class_str_item" n s) : + (mk_anti ~c: "class_str_item" n s)) : 'class_structure) | _ -> assert false))) ]) ])) ()); @@ -6102,7 +6191,7 @@ Very old (no more supported) syntax:\n\ ((("" | "cst" | "anti" | "list" as n)), s) -> (Ast.CrAnt (_loc, - mk_anti ~c: "class_str_item" n s) : + (mk_anti ~c: "class_str_item" n s)) : 'class_str_item) | _ -> assert false))) ]) ])) ()); @@ -6221,7 +6310,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e : 'expr) _ (t : 'ctyp) _ (_loc : Gram.Loc.t) -> - (Ast.ExCoe (_loc, e, Ast.TyNil _loc, t) : + (Ast.ExCoe (_loc, e, (Ast.TyNil _loc), t) : 'cvalue_binding)))); ([ Gram.Skeyword ":"; Gram.Snterm @@ -6324,7 +6413,7 @@ Very old (no more supported) syntax:\n\ | ANTIQUOT ((("" | "ctyp" | "anti" as n)), s) -> (Ast.CtAnt (_loc, - mk_anti ~c: "class_type" n s) : + (mk_anti ~c: "class_type" n s)) : 'class_type) | _ -> assert false))) ]) ])) ()); @@ -6342,7 +6431,7 @@ Very old (no more supported) syntax:\n\ (fun (i : 'class_type_longident) (_loc : Gram.Loc.t) -> (Ast.CtCon (_loc, Ast.ViNil, i, - Ast.TyNil _loc) : + (Ast.TyNil _loc)) : 'class_type_longident_and_param)))); ([ Gram.Snterm (Gram.Entry.obj @@ -6412,9 +6501,9 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (csg : 'class_sig_item) (_loc : Gram.Loc.t) -> - (csg : 'e__10)))) ]) ], + (csg : 'e__11)))) ]) ], (Gram.Action.mk - (fun (l : 'e__10 list) (_loc : Gram.Loc.t) -> + (fun (l : 'e__11 list) (_loc : Gram.Loc.t) -> (Ast.cgSem_of_list l : 'class_signature)))); ([ Gram.Stoken (((function @@ -6434,8 +6523,8 @@ Very old (no more supported) syntax:\n\ ((("" | "csg" | "anti" | "list" as n)), s) -> (Ast.CgSem (_loc, - Ast.CgAnt (_loc, - mk_anti ~c: "class_sig_item" n s), + (Ast.CgAnt (_loc, + (mk_anti ~c: "class_sig_item" n s))), csg) : 'class_signature) | _ -> assert false))); @@ -6453,7 +6542,7 @@ Very old (no more supported) syntax:\n\ ((("" | "csg" | "anti" | "list" as n)), s) -> (Ast.CgAnt (_loc, - mk_anti ~c: "class_sig_item" n s) : + (mk_anti ~c: "class_sig_item" n s)) : 'class_signature) | _ -> assert false))) ]) ])) ()); @@ -6574,7 +6663,7 @@ Very old (no more supported) syntax:\n\ ((("" | "csg" | "anti" | "list" as n)), s) -> (Ast.CgAnt (_loc, - mk_anti ~c: "class_sig_item" n s) : + (mk_anti ~c: "class_sig_item" n s)) : 'class_sig_item) | _ -> assert false))) ]) ])) ()); @@ -6637,7 +6726,7 @@ Very old (no more supported) syntax:\n\ ((("" | "typ" | "anti" | "list" as n)), s) -> (Ast.CtAnt (_loc, - mk_anti ~c: "class_type" n s) : + (mk_anti ~c: "class_type" n s)) : 'class_description) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "and"; Gram.Sself ], @@ -6694,7 +6783,7 @@ Very old (no more supported) syntax:\n\ ((("" | "typ" | "anti" | "list" as n)), s) -> (Ast.CtAnt (_loc, - mk_anti ~c: "class_type" n s) : + (mk_anti ~c: "class_type" n s)) : 'class_type_declaration) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "and"; Gram.Sself ], @@ -6743,7 +6832,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (e : 'expr) _ (l : 'label) (_loc : Gram.Loc.t) -> - (Ast.RbEq (_loc, Ast.IdLid (_loc, l), e) : + (Ast.RbEq (_loc, (Ast.IdLid (_loc, l)), e) : 'field_expr)))); ([ Gram.Stoken (((function @@ -6756,7 +6845,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.RbAnt (_loc, - mk_anti ~c: "rec_binding" n s) : + (mk_anti ~c: "rec_binding" n s)) : 'field_expr) | _ -> assert false))); ([ Gram.Stoken @@ -6771,7 +6860,7 @@ Very old (no more supported) syntax:\n\ | ANTIQUOT ((("" | "bi" | "anti" as n)), s) -> (Ast.RbAnt (_loc, - mk_anti ~c: "rec_binding" n s) : + (mk_anti ~c: "rec_binding" n s)) : 'field_expr) | _ -> assert false))) ]) ])) ()); @@ -6822,7 +6911,8 @@ Very old (no more supported) syntax:\n\ (fun (t : 'poly_type) _ (lab : 'a_LIDENT) (_loc : Gram.Loc.t) -> (Ast.TyCol (_loc, - Ast.TyId (_loc, Ast.IdLid (_loc, lab)), t) : + (Ast.TyId (_loc, (Ast.IdLid (_loc, lab)))), + t) : 'meth_decl)))); ([ Gram.Stoken (((function | QUOTATION _ -> true | _ -> false), @@ -6847,7 +6937,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp;" n s) : + (mk_anti ~c: "ctyp;" n s)) : 'meth_decl) | _ -> assert false))); ([ Gram.Stoken @@ -6860,7 +6950,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'meth_decl) | _ -> assert false))) ]) ])) ()); @@ -6873,7 +6964,7 @@ Very old (no more supported) syntax:\n\ (opt_dot_dot : 'opt_dot_dot Gram.Entry.t)) ], (Gram.Action.mk (fun (v : 'opt_dot_dot) (_loc : Gram.Loc.t) -> - (Ast.TyObj (_loc, Ast.TyNil _loc, v) : + (Ast.TyObj (_loc, (Ast.TyNil _loc), v) : 'opt_meth_list)))); ([ Gram.Snterm (Gram.Entry.obj @@ -6936,7 +7027,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'typevars) | _ -> assert false))); ([ Gram.Sself; Gram.Sself ], @@ -6965,7 +7057,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (t : 'amp_ctyp) _ (i : 'a_ident) _ (_loc : Gram.Loc.t) -> - (Ast.TyOf (_loc, Ast.TyVrn (_loc, i), t) : + (Ast.TyOf (_loc, (Ast.TyVrn (_loc, i)), t) : 'row_field)))); ([ Gram.Skeyword "`"; Gram.Snterm @@ -6978,7 +7070,7 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (t : 'amp_ctyp) _ _ (i : 'a_ident) _ (_loc : Gram.Loc.t) -> - (Ast.TyOfAmp (_loc, Ast.TyVrn (_loc, i), t) : + (Ast.TyOfAmp (_loc, (Ast.TyVrn (_loc, i)), t) : 'row_field)))); ([ Gram.Skeyword "`"; Gram.Snterm @@ -7003,7 +7095,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp|" n s) : + (mk_anti ~c: "ctyp|" n s)) : 'row_field) | _ -> assert false))); ([ Gram.Stoken @@ -7016,7 +7108,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'row_field) | _ -> assert false))) ]) ])) ()); @@ -7040,7 +7133,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("list" as n)), s) -> (Ast.TyAnt (_loc, - mk_anti ~c: "ctyp&" n s) : + (mk_anti ~c: "ctyp&" n s)) : 'amp_ctyp) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "&"; Gram.Sself ], @@ -7075,7 +7168,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "typ" as n)), s) -> - (Ast.TyAnt (_loc, mk_anti ~c: "ctyp" n s) : + (Ast.TyAnt (_loc, + (mk_anti ~c: "ctyp" n s)) : 'name_tags) | _ -> assert false))) ]) ])) ()); @@ -7150,8 +7244,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "lid" as n)), i) -> - (Ast.PaOlb (_loc, mk_anti n i, - Ast.PaNil _loc) : + (Ast.PaOlb (_loc, (mk_anti n i), + (Ast.PaNil _loc)) : 'ipatt) | _ -> assert false))); ([ Gram.Skeyword "?"; @@ -7163,7 +7257,7 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | LIDENT i -> - (Ast.PaOlb (_loc, i, Ast.PaNil _loc) : + (Ast.PaOlb (_loc, i, (Ast.PaNil _loc)) : 'ipatt) | _ -> assert false))); ([ Gram.Skeyword "?"; @@ -7215,7 +7309,7 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | LIDENT i -> - (Ast.PaLab (_loc, i, Ast.PaNil _loc) : + (Ast.PaLab (_loc, i, (Ast.PaNil _loc)) : 'ipatt) | _ -> assert false))); ([ Gram.Skeyword "~"; @@ -7229,8 +7323,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "lid" as n)), i) -> - (Ast.PaLab (_loc, mk_anti n i, - Ast.PaNil _loc) : + (Ast.PaLab (_loc, (mk_anti n i), + (Ast.PaNil _loc)) : 'ipatt) | _ -> assert false))); ([ Gram.Skeyword "~"; @@ -7245,7 +7339,7 @@ Very old (no more supported) syntax:\n\ _ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" | "lid" as n)), i) -> - (Ast.PaLab (_loc, mk_anti n i, p) : + (Ast.PaLab (_loc, (mk_anti n i), p) : 'ipatt) | _ -> assert false))); ([ Gram.Stoken @@ -7528,9 +7622,9 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (sg : 'sig_item) (_loc : Gram.Loc.t) -> - (sg : 'e__11)))) ]) ], + (sg : 'e__12)))) ]) ], (Gram.Action.mk - (fun (l : 'e__11 list) (_loc : Gram.Loc.t) -> + (fun (l : 'e__12 list) (_loc : Gram.Loc.t) -> (Ast.sgSem_of_list l : 'sig_items)))); ([ Gram.Stoken (((function @@ -7550,8 +7644,8 @@ Very old (no more supported) syntax:\n\ ((("" | "sigi" | "anti" | "list" as n)), s) -> (Ast.SgSem (_loc, - Ast.SgAnt (_loc, - mk_anti n ~c: "sig_item" s), + (Ast.SgAnt (_loc, + (mk_anti n ~c: "sig_item" s))), sg) : 'sig_items) | _ -> assert false))); @@ -7569,7 +7663,7 @@ Very old (no more supported) syntax:\n\ ((("" | "sigi" | "anti" | "list" as n)), s) -> (Ast.SgAnt (_loc, - mk_anti n ~c: "sig_item" s) : + (mk_anti n ~c: "sig_item" s)) : 'sig_items) | _ -> assert false))) ]) ])) ()); @@ -7626,9 +7720,9 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun _ (st : 'str_item) (_loc : Gram.Loc.t) -> - (st : 'e__12)))) ]) ], + (st : 'e__13)))) ]) ], (Gram.Action.mk - (fun (l : 'e__12 list) (_loc : Gram.Loc.t) -> + (fun (l : 'e__13 list) (_loc : Gram.Loc.t) -> (Ast.stSem_of_list l : 'str_items)))); ([ Gram.Stoken (((function @@ -7648,8 +7742,8 @@ Very old (no more supported) syntax:\n\ ((("" | "stri" | "anti" | "list" as n)), s) -> (Ast.StSem (_loc, - Ast.StAnt (_loc, - mk_anti n ~c: "str_item" s), + (Ast.StAnt (_loc, + (mk_anti n ~c: "str_item" s))), st) : 'str_items) | _ -> assert false))); @@ -7667,7 +7761,7 @@ Very old (no more supported) syntax:\n\ ((("" | "stri" | "anti" | "list" as n)), s) -> (Ast.StAnt (_loc, - mk_anti n ~c: "str_item" s) : + (mk_anti n ~c: "str_item" s)) : 'str_items) | _ -> assert false))) ]) ])) ()); @@ -8268,7 +8362,8 @@ Very old (no more supported) syntax:\n\ (fun (z : 'label_declaration_list) _ (y : 'more_ctyp) _ (x : 'more_ctyp) (_loc : Gram.Loc.t) -> - (Ast.TySem (_loc, Ast.TyCol (_loc, x, y), z) : + (Ast.TySem (_loc, (Ast.TyCol (_loc, x, y)), + z) : 'ctyp_quot)))); ([ Gram.Snterm (Gram.Entry.obj @@ -8295,7 +8390,8 @@ Very old (no more supported) syntax:\n\ (Gram.Action.mk (fun (z : 'row_field) _ (y : 'amp_ctyp) _ _ (x : 'more_ctyp) (_loc : Gram.Loc.t) -> - (Ast.TyOr (_loc, Ast.TyOfAmp (_loc, x, y), z) : + (Ast.TyOr (_loc, (Ast.TyOfAmp (_loc, x, y)), + z) : 'ctyp_quot)))); ([ Gram.Snterm (Gram.Entry.obj @@ -8325,7 +8421,7 @@ Very old (no more supported) syntax:\n\ (fun (z : 'constructor_declarations) _ (y : 'constructor_arg_list) _ (x : 'more_ctyp) (_loc : Gram.Loc.t) -> - (Ast.TyOr (_loc, Ast.TyOf (_loc, x, y), z) : + (Ast.TyOr (_loc, (Ast.TyOf (_loc, x, y)), z) : 'ctyp_quot)))); ([ Gram.Snterm (Gram.Entry.obj @@ -8515,10 +8611,11 @@ Very old (no more supported) syntax:\n\ (fun (_loc : Gram.Loc.t) -> (Ast.McNil _loc : 'match_case_quot)))); ([ Gram.Slist0sep - (Gram.Snterm - (Gram.Entry.obj - (match_case0 : 'match_case0 Gram.Entry.t)), - Gram.Skeyword "|") ], + ((Gram.Snterm + (Gram.Entry.obj + (match_case0 : + 'match_case0 Gram.Entry.t))), + (Gram.Skeyword "|")) ], (Gram.Action.mk (fun (x : 'match_case0 list) (_loc : Gram.Loc.t) -> (Ast.mcOr_of_list x : 'match_case_quot)))) ]) ])) @@ -8610,7 +8707,8 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" as n)), m) -> - (Ast.MbColEq (_loc, mk_anti n m, mt, me) : + (Ast.MbColEq (_loc, (mk_anti n m), mt, + me) : 'module_binding_quot) | _ -> assert false))); ([ Gram.Stoken @@ -8628,7 +8726,7 @@ Very old (no more supported) syntax:\n\ (_loc : Gram.Loc.t) -> match __camlp4_0 with | ANTIQUOT ((("" as n)), m) -> - (Ast.MbCol (_loc, mk_anti n m, mt) : + (Ast.MbCol (_loc, (mk_anti n m), mt) : 'module_binding_quot) | _ -> assert false))); ([ Gram.Stoken @@ -8642,7 +8740,7 @@ Very old (no more supported) syntax:\n\ match __camlp4_0 with | ANTIQUOT ((("" as n)), s) -> (Ast.MbAnt (_loc, - mk_anti ~c: "module_binding" n s) : + (mk_anti ~c: "module_binding" n s)) : 'module_binding_quot) | _ -> assert false))); ([ Gram.Stoken @@ -8659,7 +8757,7 @@ Very old (no more supported) syntax:\n\ ((("module_binding" | "anti" as n)), s) -> (Ast.MbAnt (_loc, - mk_anti ~c: "module_binding" n s) : + (mk_anti ~c: "module_binding" n s)) : 'module_binding_quot) | _ -> assert false))); ([ Gram.Sself; Gram.Skeyword "and"; Gram.Sself ], @@ -8706,8 +8804,8 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAcc (_loc, - Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s), + (Ast.IdAnt (_loc, + (mk_anti ~c: "ident" n s))), i) : 'ident_quot) | _ -> assert false))); @@ -8737,7 +8835,7 @@ Very old (no more supported) syntax:\n\ ((("" | "id" | "anti" | "list" as n)), s) -> (Ast.IdAnt (_loc, - mk_anti ~c: "ident" n s) : + (mk_anti ~c: "ident" n s)) : 'ident_quot) | _ -> assert false))) ]) ])) ()); @@ -8787,7 +8885,7 @@ Very old (no more supported) syntax:\n\ (fun ((i, ot) : 'class_name_and_param) _ (_loc : Gram.Loc.t) -> (Ast.CeCon (_loc, Ast.ViVirtual, - Ast.IdLid (_loc, i), ot) : + (Ast.IdLid (_loc, i)), ot) : 'class_expr_quot)))); ([ Gram.Sself; Gram.Skeyword "="; Gram.Sself ], (Gram.Action.mk @@ -8851,7 +8949,7 @@ Very old (no more supported) syntax:\n\ (fun ((i, ot) : 'class_name_and_param) _ (_loc : Gram.Loc.t) -> (Ast.CtCon (_loc, Ast.ViVirtual, - Ast.IdLid (_loc, i), ot) : + (Ast.IdLid (_loc, i)), ot) : 'class_type_quot)))); ([ Gram.Sself; Gram.Skeyword ":"; Gram.Sself ], (Gram.Action.mk @@ -9117,9 +9215,9 @@ module Camlp4QuotationCommon = let meta_loc_expr _loc loc = match !loc_name with - | None -> Ast.ExId (_loc, Ast.IdLid (_loc, !Loc.name)) + | None -> Ast.ExId (_loc, (Ast.IdLid (_loc, !Loc.name))) | Some "here" -> MetaLocHere.meta_loc_expr _loc loc - | Some x -> Ast.ExId (_loc, Ast.IdLid (_loc, x)) + | Some x -> Ast.ExId (_loc, (Ast.IdLid (_loc, x))) let meta_loc_patt _loc _ = Ast.PaAny _loc @@ -9160,139 +9258,156 @@ module Camlp4QuotationCommon = match n with | "antisig_item" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgAnt")))))), + (mloc _loc))), p) | "antistr_item" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StAnt")))))), + (mloc _loc))), p) | "antictyp" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAnt")))))), + (mloc _loc))), p) | "antipatt" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaAnt")))))), + (mloc _loc))), p) | "antiexpr" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAnt")))))), + (mloc _loc))), p) | "antimodule_type" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtAnt")))))), + (mloc _loc))), p) | "antimodule_expr" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeAnt")))))), + (mloc _loc))), p) | "anticlass_type" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtAnt")))))), + (mloc _loc))), p) | "anticlass_expr" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeAnt")))))), + (mloc _loc))), p) | "anticlass_sig_item" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgAnt")))))), + (mloc _loc))), p) | "anticlass_str_item" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrAnt")))))), + (mloc _loc))), p) | "antiwith_constr" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcAnt")))))), + (mloc _loc))), p) | "antibinding" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiAnt")))))), + (mloc _loc))), p) | "antirec_binding" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbAnt")))))), + (mloc _loc))), p) | "antimatch_case" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McAnt")))))), + (mloc _loc))), p) | "antimodule_binding" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbAnt")))))), + (mloc _loc))), p) | "antiident" -> Ast.PaApp (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdAnt"))), - mloc _loc), + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdAnt")))))), + (mloc _loc))), p) | _ -> p) | p -> super#patt p @@ -9308,339 +9423,387 @@ module Camlp4QuotationCommon = match n with | "`int" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdLid (_loc, "string_of_int")), + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "string_of_int")))), e) | "`int32" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Int32"), - Ast.IdLid (_loc, "to_string"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Int32")), + (Ast.IdLid (_loc, "to_string")))))), e) | "`int64" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Int64"), - Ast.IdLid (_loc, "to_string"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Int64")), + (Ast.IdLid (_loc, "to_string")))))), e) | "`nativeint" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Nativeint"), - Ast.IdLid (_loc, "to_string"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Nativeint")), + (Ast.IdLid (_loc, "to_string")))))), e) | "`flo" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdLid (_loc, "string_of_float")), + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "string_of_float")))), e) | "`str" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "safe_string_escaped"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "safe_string_escaped")))))), e) | "`chr" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Char"), - Ast.IdLid (_loc, "escaped"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Char")), + (Ast.IdLid (_loc, "escaped")))))), e) | "`bool" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdUid"))), - mloc _loc), - Ast.ExIfe (_loc, e, Ast.ExStr (_loc, "True"), - Ast.ExStr (_loc, "False"))) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdUid")))))), + (mloc _loc))), + (Ast.ExIfe (_loc, e, + (Ast.ExStr (_loc, "True")), + (Ast.ExStr (_loc, "False"))))) | "liststr_item" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "stSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "stSem_of_list")))))), e) | "listsig_item" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "sgSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "sgSem_of_list")))))), e) | "listclass_sig_item" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "cgSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "cgSem_of_list")))))), e) | "listclass_str_item" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "crSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "crSem_of_list")))))), e) | "listmodule_expr" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "meApp_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "meApp_of_list")))))), e) | "listmodule_type" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "mtApp_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "mtApp_of_list")))))), e) | "listmodule_binding" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "mbAnd_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "mbAnd_of_list")))))), e) | "listbinding" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "biAnd_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "biAnd_of_list")))))), e) | "listbinding;" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "biSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "biSem_of_list")))))), e) | "listrec_binding" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "rbSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "rbSem_of_list")))))), e) | "listclass_type" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "ctAnd_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "ctAnd_of_list")))))), e) | "listclass_expr" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "ceAnd_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "ceAnd_of_list")))))), e) | "listident" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "idAcc_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "idAcc_of_list")))))), e) | "listctypand" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "tyAnd_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "tyAnd_of_list")))))), e) | "listctyp;" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "tySem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "tySem_of_list")))))), e) | "listctyp*" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "tySta_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "tySta_of_list")))))), e) | "listctyp|" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "tyOr_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "tyOr_of_list")))))), e) | "listctyp," -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "tyCom_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "tyCom_of_list")))))), e) | "listctyp&" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "tyAmp_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "tyAmp_of_list")))))), e) | "listwith_constr" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "wcAnd_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "wcAnd_of_list")))))), e) | "listmatch_case" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "mcOr_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "mcOr_of_list")))))), e) | "listpatt," -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "paCom_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "paCom_of_list")))))), e) | "listpatt;" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "paSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "paSem_of_list")))))), e) | "listexpr," -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "exCom_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "exCom_of_list")))))), e) | "listexpr;" -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdLid (_loc, "exSem_of_list"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdLid (_loc, "exSem_of_list")))))), e) | "antisig_item" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "SgAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "SgAnt")))))), + (mloc _loc))), e) | "antistr_item" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "StAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "StAnt")))))), + (mloc _loc))), e) | "antictyp" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "TyAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "TyAnt")))))), + (mloc _loc))), e) | "antipatt" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "PaAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "PaAnt")))))), + (mloc _loc))), e) | "antiexpr" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "ExAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "ExAnt")))))), + (mloc _loc))), e) | "antimodule_type" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MtAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MtAnt")))))), + (mloc _loc))), e) | "antimodule_expr" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MeAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MeAnt")))))), + (mloc _loc))), e) | "anticlass_type" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CtAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CtAnt")))))), + (mloc _loc))), e) | "anticlass_expr" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CeAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CeAnt")))))), + (mloc _loc))), e) | "anticlass_sig_item" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CgAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CgAnt")))))), + (mloc _loc))), e) | "anticlass_str_item" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "CrAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "CrAnt")))))), + (mloc _loc))), e) | "antiwith_constr" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "WcAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "WcAnt")))))), + (mloc _loc))), e) | "antibinding" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "BiAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "BiAnt")))))), + (mloc _loc))), e) | "antirec_binding" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "RbAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "RbAnt")))))), + (mloc _loc))), e) | "antimatch_case" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "McAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "McAnt")))))), + (mloc _loc))), e) | "antimodule_binding" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "MbAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "MbAnt")))))), + (mloc _loc))), e) | "antiident" -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, "IdAnt"))), - mloc _loc), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, "IdAnt")))))), + (mloc _loc))), e) | _ -> e) | e -> super#expr e @@ -9678,12 +9841,12 @@ module Camlp4QuotationCommon = (Ast.IdUid (_, u)))))), _) -> Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Ast"), - Ast.IdUid (_loc, u))), - Ast.PaId (_loc, Ast.IdLid (_loc, name))) + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Ast")), + (Ast.IdUid (_loc, u)))))), + (Ast.PaId (_loc, (Ast.IdLid (_loc, name))))) | Ast.PaApp (_loc, a, b) -> - Ast.PaApp (_loc, subst_first_loc a, b) + Ast.PaApp (_loc, (subst_first_loc a), b) | p -> p) in subst_first_loc exp_ast in @@ -9900,13 +10063,13 @@ module Rp = let peek_fun _loc = Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "peek"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "peek"))))) let junk_fun _loc = Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "junk"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "junk"))))) (* Parsers. *) (* In syntax generated, many cases are optimisations. *) @@ -9989,61 +10152,63 @@ module Rp = match e with | Ast.ExId (_, (Ast.IdLid (_, x))) -> let x = if x = v then strm_n else x - in Ast.ExId (_loc, Ast.IdLid (_loc, x)) + in Ast.ExId (_loc, (Ast.IdLid (_loc, x))) | Ast.ExId (_, (Ast.IdUid (_, _))) -> e | Ast.ExInt (_, _) -> e | Ast.ExChr (_, _) -> e | Ast.ExStr (_, _) -> e | Ast.ExAcc (_, _, _) -> e | Ast.ExLet (_, rf, bi, e) -> - Ast.ExLet (_loc, rf, subst_binding v bi, subst v e) + Ast.ExLet (_loc, rf, (subst_binding v bi), (subst v e)) | Ast.ExApp (_, e1, e2) -> - Ast.ExApp (_loc, subst v e1, subst v e2) - | Ast.ExTup (_, e) -> Ast.ExTup (_loc, subst v e) + Ast.ExApp (_loc, (subst v e1), (subst v e2)) + | Ast.ExTup (_, e) -> Ast.ExTup (_loc, (subst v e)) | Ast.ExCom (_, e1, e2) -> - Ast.ExCom (_loc, subst v e1, subst v e2) + Ast.ExCom (_loc, (subst v e1), (subst v e2)) | _ -> raise Not_found and subst_binding v = function | Ast.BiAnd (_loc, b1, b2) -> - Ast.BiAnd (_loc, subst_binding v b1, subst_binding v b2) + Ast.BiAnd (_loc, (subst_binding v b1), (subst_binding v b2)) | Ast.BiEq (_loc, (Ast.PaId (_, (Ast.IdLid (_, v')))), e) -> - Ast.BiEq (_loc, Ast.PaId (_loc, Ast.IdLid (_loc, v')), - if v = v' then e else subst v e) + Ast.BiEq (_loc, (Ast.PaId (_loc, (Ast.IdLid (_loc, v')))), + (if v = v' then e else subst v e)) | _ -> raise Not_found let stream_pattern_component skont ckont = function | SpTrm (_loc, p, None) -> Ast.ExMat (_loc, - Ast.ExApp (_loc, peek_fun _loc, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n))), - Ast.McOr (_loc, - Ast.McArr (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "Some")), p), - Ast.ExNil _loc, - Ast.ExSeq (_loc, - Ast.ExSem (_loc, - Ast.ExApp (_loc, junk_fun _loc, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n))), - skont))), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, ckont))) + (Ast.ExApp (_loc, (peek_fun _loc), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))), + (Ast.McOr (_loc, + (Ast.McArr (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, (Ast.IdUid (_loc, "Some")))), p)), + (Ast.ExNil _loc), + (Ast.ExSeq (_loc, + (Ast.ExSem (_loc, + (Ast.ExApp (_loc, (junk_fun _loc), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))), + skont)))))), + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), + ckont))))) | SpTrm (_loc, p, (Some w)) -> Ast.ExMat (_loc, - Ast.ExApp (_loc, peek_fun _loc, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n))), - Ast.McOr (_loc, - Ast.McArr (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "Some")), p), - w, - Ast.ExSeq (_loc, - Ast.ExSem (_loc, - Ast.ExApp (_loc, junk_fun _loc, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n))), - skont))), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, ckont))) + (Ast.ExApp (_loc, (peek_fun _loc), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))), + (Ast.McOr (_loc, + (Ast.McArr (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, (Ast.IdUid (_loc, "Some")))), p)), + w, + (Ast.ExSeq (_loc, + (Ast.ExSem (_loc, + (Ast.ExApp (_loc, (junk_fun _loc), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))), + skont)))))), + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), + ckont))))) | SpNtr (_loc, p, e) -> let e = (match e with @@ -10059,7 +10224,7 @@ module Rp = when v = strm_n -> e | _ -> Ast.ExApp (_loc, e, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n)))) + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))) in if pattern_eq_expression p skont then @@ -10070,30 +10235,31 @@ module Rp = then e else Ast.ExTry (_loc, e, - Ast.McArr (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdUid (_loc, "Failure"))), - Ast.ExNil _loc, ckont)) + (Ast.McArr (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdUid (_loc, "Failure")))))), + (Ast.ExNil _loc), ckont))) else if is_raise_failure ckont then - Ast.ExLet (_loc, Ast.ReNil, Ast.BiEq (_loc, p, e), skont) + Ast.ExLet (_loc, Ast.ReNil, (Ast.BiEq (_loc, p, e)), + skont) else if pattern_eq_expression (Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "Some")), p)) + (Ast.PaId (_loc, (Ast.IdUid (_loc, "Some")))), p)) skont then Ast.ExTry (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "Some")), e), - Ast.McArr (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdUid (_loc, "Failure"))), - Ast.ExNil _loc, ckont)) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "Some")))), e)), + (Ast.McArr (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdUid (_loc, "Failure")))))), + (Ast.ExNil _loc), ckont))) else if is_raise ckont then @@ -10102,33 +10268,37 @@ module Rp = then e else Ast.ExTry (_loc, e, - Ast.McArr (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Stream"), - Ast.IdUid (_loc, "Failure"))), - Ast.ExNil _loc, ckont)) + (Ast.McArr (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Stream")), + (Ast.IdUid (_loc, "Failure")))))), + (Ast.ExNil _loc), ckont))) in Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, p, tst), skont)) + (Ast.BiEq (_loc, p, tst)), skont)) else Ast.ExMat (_loc, - Ast.ExTry (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "Some")), e), - Ast.McArr (_loc, - Ast.PaId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdUid (_loc, "Failure"))), - Ast.ExNil _loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "None")))), - Ast.McOr (_loc, - Ast.McArr (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "Some")), p), - Ast.ExNil _loc, skont), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, - ckont))) + (Ast.ExTry (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "Some")))), + e)), + (Ast.McArr (_loc, + (Ast.PaId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Stream")), + (Ast.IdUid (_loc, "Failure")))))), + (Ast.ExNil _loc), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "None")))))))), + (Ast.McOr (_loc, + (Ast.McArr (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdUid (_loc, "Some")))), + p)), + (Ast.ExNil _loc), skont)), + (Ast.McArr (_loc, (Ast.PaAny _loc), + (Ast.ExNil _loc), ckont))))) | SpStr (_loc, p) -> (try match p with @@ -10137,8 +10307,8 @@ module Rp = with | Not_found -> Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, p, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n))), + (Ast.BiEq (_loc, p, + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))), skont)) let rec stream_pattern _loc epo e ekont = @@ -10147,12 +10317,12 @@ module Rp = (match epo with | Some ep -> Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, ep, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "count"))), - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n)))), + (Ast.BiEq (_loc, ep, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "count")))))), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))))), e) | _ -> e) | (spc, err) :: spcl -> @@ -10164,12 +10334,12 @@ module Rp = | _ -> Ast.ExStr (_loc, "")) in Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "raise")), - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdUid (_loc, "Error"))), - str)) + (Ast.ExId (_loc, (Ast.IdLid (_loc, "raise")))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdUid (_loc, "Error")))))), + str))) in stream_pattern _loc epo e ekont spcl in let ckont = ekont err in stream_pattern_component skont ckont spc @@ -10180,7 +10350,7 @@ module Rp = (fun (p, w, _loc, spcl, epo, e) acc -> let p = Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "Some")), p) in + (Ast.PaId (_loc, (Ast.IdUid (_loc, "Some")))), p) in let e = let ekont err = let str = @@ -10189,33 +10359,35 @@ module Rp = | _ -> Ast.ExStr (_loc, "") in Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "raise")), - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdUid (_loc, "Error"))), - str)) in + (Ast.ExId (_loc, (Ast.IdLid (_loc, "raise")))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Stream")), + (Ast.IdUid (_loc, "Error")))))), + str))) in let skont = stream_pattern _loc epo e ekont spcl in Ast.ExSeq (_loc, - Ast.ExSem (_loc, - Ast.ExApp (_loc, junk_fun _loc, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n))), - skont)) + (Ast.ExSem (_loc, + (Ast.ExApp (_loc, (junk_fun _loc), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))), + skont))) in match w with | Some w -> - Ast.McOr (_loc, Ast.McArr (_loc, p, w, e), acc) + Ast.McOr (_loc, (Ast.McArr (_loc, p, w, e)), acc) | None -> Ast.McOr (_loc, - Ast.McArr (_loc, p, Ast.ExNil _loc, e), acc)) + (Ast.McArr (_loc, p, (Ast.ExNil _loc), e)), acc)) tspel (Ast.McNil _loc) in Ast.ExMat (_loc, - Ast.ExApp (_loc, peek_fun _loc, - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n))), - Ast.McOr (_loc, pel, - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, ekont ()))) + (Ast.ExApp (_loc, (peek_fun _loc), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))), + (Ast.McOr (_loc, pel, + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), + (ekont ())))))) let rec group_terms = function @@ -10227,10 +10399,11 @@ module Rp = let rec parser_cases _loc = function | [] -> - Ast.ExApp (_loc, Ast.ExId (_loc, Ast.IdLid (_loc, "raise")), - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdUid (_loc, "Failure")))) + Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdLid (_loc, "raise")))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdUid (_loc, "Failure"))))))) | spel -> (match group_terms spel with | ([], (spcl, epo, e) :: spel) -> @@ -10246,22 +10419,22 @@ module Rp = match bpo with | Some bp -> Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, bp, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "count"))), - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n)))), + (Ast.BiEq (_loc, bp, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "count")))))), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))))), e) | None -> e in let p = - Ast.PaTyc (_loc, Ast.PaId (_loc, Ast.IdLid (_loc, strm_n)), - Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "t"))), - Ast.TyAny _loc)) - in Ast.ExFun (_loc, Ast.McArr (_loc, p, Ast.ExNil _loc, e)) + Ast.PaTyc (_loc, (Ast.PaId (_loc, (Ast.IdLid (_loc, strm_n)))), + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "t")))))), + (Ast.TyAny _loc)))) + in Ast.ExFun (_loc, (Ast.McArr (_loc, p, (Ast.ExNil _loc), e))) let cparser_match _loc me bpo pc = let pc = parser_cases _loc pc in @@ -10269,12 +10442,12 @@ module Rp = match bpo with | Some bp -> Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, bp, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "count"))), - Ast.ExId (_loc, Ast.IdLid (_loc, strm_n)))), + (Ast.BiEq (_loc, bp, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "count")))))), + (Ast.ExId (_loc, (Ast.IdLid (_loc, strm_n)))))))), pc) | None -> pc in let me = @@ -10286,15 +10459,15 @@ module Rp = | Ast.ExId (_, (Ast.IdLid (_, x))) when x = strm_n -> e | _ -> Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, - Ast.PaTyc (_loc, - Ast.PaId (_loc, Ast.IdLid (_loc, strm_n)), - Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "t"))), - Ast.TyAny _loc)), - me), + (Ast.BiEq (_loc, + (Ast.PaTyc (_loc, + (Ast.PaId (_loc, (Ast.IdLid (_loc, strm_n)))), + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "t")))))), + (Ast.TyAny _loc))))), + me)), e) (* streams *) @@ -10321,10 +10494,10 @@ module Rp = | Ast.ExId (_, (Ast.IdLid (_, _))) -> f | _ -> Ast.ExFun (_loc, - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, e))) + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), e)))) | _ -> Ast.ExFun (_loc, - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, e)) + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), e))) let rec cstream gloc = function @@ -10332,67 +10505,67 @@ module Rp = let _loc = gloc in Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "sempty"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "sempty"))))) | [ SeTrm (_loc, e) ] -> if not_computing e then Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "ising"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "ising")))))), e) else Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "lsing"))), - slazy _loc e) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "lsing")))))), + (slazy _loc e)) | SeTrm (_loc, e) :: secl -> if not_computing e then Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "icons"))), - e), - cstream gloc secl) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "icons")))))), + e)), + (cstream gloc secl)) else Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "lcons"))), - slazy _loc e), - cstream gloc secl) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "lcons")))))), + (slazy _loc e))), + (cstream gloc secl)) | [ SeNtr (_loc, e) ] -> if not_computing e then e else Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "slazy"))), - slazy _loc e) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "slazy")))))), + (slazy _loc e)) | SeNtr (_loc, e) :: secl -> if not_computing e then Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "iapp"))), - e), - cstream gloc secl) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "iapp")))))), + e)), + (cstream gloc secl)) else Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Stream"), - Ast.IdLid (_loc, "lapp"))), - slazy _loc e), - cstream gloc secl) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Stream")), + (Ast.IdLid (_loc, "lapp")))))), + (slazy _loc e))), + (cstream gloc secl)) (* Syntax extensions in Revised Syntax grammar *) let _ = @@ -10471,10 +10644,11 @@ module Rp = ([ pc ] : 'parser_case_list)))); ([ Gram.Skeyword "["; Gram.Slist0sep - (Gram.Snterm - (Gram.Entry.obj - (parser_case : 'parser_case Gram.Entry.t)), - Gram.Skeyword "|"); + ((Gram.Snterm + (Gram.Entry.obj + (parser_case : + 'parser_case Gram.Entry.t))), + (Gram.Skeyword "|")); Gram.Skeyword "]" ], (Gram.Action.mk (fun _ (pcl : 'parser_case list) _ @@ -10590,9 +10764,9 @@ module Rp = 'stream_expr Gram.Entry.t)) ], (Gram.Action.mk (fun (e : 'stream_expr) _ - (_loc : Gram.Loc.t) -> (e : 'e__13)))) ]) ], + (_loc : Gram.Loc.t) -> (e : 'e__14)))) ]) ], (Gram.Action.mk - (fun (eo : 'e__13 option) + (fun (eo : 'e__14 option) (spc : 'stream_patt_comp) (_loc : Gram.Loc.t) -> ((spc, eo) : 'stream_patt_comp_err)))) ]) ])) ()); @@ -10663,9 +10837,9 @@ module Rp = 'stream_expr Gram.Entry.t)) ], (Gram.Action.mk (fun (e : 'stream_expr) _ - (_loc : Gram.Loc.t) -> (e : 'e__14)))) ]) ], + (_loc : Gram.Loc.t) -> (e : 'e__15)))) ]) ], (Gram.Action.mk - (fun (eo : 'e__14 option) (p : 'patt) _ + (fun (eo : 'e__15 option) (p : 'patt) _ (_loc : Gram.Loc.t) -> (SpTrm (_loc, p, eo) : 'stream_patt_comp)))) ]) ])) ()); @@ -10682,7 +10856,7 @@ module Rp = (a_LIDENT : 'a_LIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (i : 'a_LIDENT) (_loc : Gram.Loc.t) -> - (Ast.PaId (_loc, Ast.IdLid (_loc, i)) : + (Ast.PaId (_loc, (Ast.IdLid (_loc, i))) : 'parser_ipatt)))) ]) ])) ()); Gram.extend (expr : 'expr Gram.Entry.t) @@ -10959,16 +11133,17 @@ module G = (s) with pattern = - Some (Ast.PaId (_loc, Ast.IdLid (_loc, "x"))); + Some (Ast.PaId (_loc, (Ast.IdLid (_loc, "x")))); } ]; action = Some (Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Token"), - Ast.IdLid (_loc, "extract_string")))), - Ast.ExId (_loc, Ast.IdLid (_loc, "x")))); + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Token")), + (Ast.IdLid (_loc, "extract_string")))))))), + (Ast.ExId (_loc, (Ast.IdLid (_loc, "x")))))); } | (* ...; [ symb ]; ... ==> ...; (x = [ symb ] -> x); ... *) { prod = [ ({ pattern = None } as s) ]; action = None } -> @@ -10978,9 +11153,9 @@ module G = (s) with pattern = - Some (Ast.PaId (_loc, Ast.IdLid (_loc, "x"))); + Some (Ast.PaId (_loc, (Ast.IdLid (_loc, "x")))); } ]; - action = Some (Ast.ExId (_loc, Ast.IdLid (_loc, "x"))); + action = Some (Ast.ExId (_loc, (Ast.IdLid (_loc, "x")))); } | (* ...; ([] -> a); ... *) ({ prod = []; action = Some _ } as r) -> r @@ -10993,29 +11168,29 @@ module G = let mklistexp _loc = let rec loop top = function - | [] -> Ast.ExId (_loc, Ast.IdUid (_loc, "[]")) + | [] -> Ast.ExId (_loc, (Ast.IdUid (_loc, "[]"))) | e1 :: el -> let _loc = if top then _loc else Loc.merge (Ast.loc_of_expr e1) _loc in Ast.ExApp (_loc, - Ast.ExApp (_loc, Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - e1), - loop false el) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), e1)), + (loop false el)) in loop true let mklistpat _loc = let rec loop top = function - | [] -> Ast.PaId (_loc, Ast.IdUid (_loc, "[]")) + | [] -> Ast.PaId (_loc, (Ast.IdUid (_loc, "[]"))) | p1 :: pl -> let _loc = if top then _loc else Loc.merge (Ast.loc_of_patt p1) _loc in Ast.PaApp (_loc, - Ast.PaApp (_loc, Ast.PaId (_loc, Ast.IdUid (_loc, "::")), - p1), - loop false pl) + (Ast.PaApp (_loc, + (Ast.PaId (_loc, (Ast.IdUid (_loc, "::")))), p1)), + (loop false pl)) in loop true let rec expr_fa al = @@ -11025,9 +11200,9 @@ module G = let rec make_ctyp styp tvar = match styp with - | STlid (_loc, s) -> Ast.TyId (_loc, Ast.IdLid (_loc, s)) + | STlid (_loc, s) -> Ast.TyId (_loc, (Ast.IdLid (_loc, s))) | STapp (_loc, t1, t2) -> - Ast.TyApp (_loc, make_ctyp t1 tvar, make_ctyp t2 tvar) + Ast.TyApp (_loc, (make_ctyp t1 tvar), (make_ctyp t2 tvar)) | STquo (_loc, s) -> Ast.TyQuo (_loc, s) | STself (_loc, x) -> if tvar = "" @@ -11038,11 +11213,12 @@ module G = else Ast.TyQuo (_loc, tvar) | STtok _loc -> Ast.TyId (_loc, - Ast.IdAcc (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Token")), - Ast.IdLid (_loc, "t"))) - | STstring_tok _loc -> Ast.TyId (_loc, Ast.IdLid (_loc, "string")) + (Ast.IdAcc (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Token")))), + (Ast.IdLid (_loc, "t"))))) + | STstring_tok _loc -> + Ast.TyId (_loc, (Ast.IdLid (_loc, "string"))) | STtyp t -> t let make_ctyp_patt styp tvar patt = @@ -11060,11 +11236,11 @@ module G = | t -> let _loc = Ast.loc_of_expr expr in Ast.ExTyc (_loc, expr, t) let text_of_action _loc psl rtvar act tvar = - let locid = Ast.PaId (_loc, Ast.IdLid (_loc, !Loc.name)) in + let locid = Ast.PaId (_loc, (Ast.IdLid (_loc, !Loc.name))) in let act = match act with | Some act -> act - | None -> Ast.ExId (_loc, Ast.IdUid (_loc, "()")) in + | None -> Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))) in let (tok_match_pl, act, _) = List.fold_left (fun (((tok_match_pl, act, i) as accu)) -> @@ -11080,14 +11256,15 @@ module G = } -> (tok_match_pl, (Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, - Ast.PaId (_loc, Ast.IdLid (_loc, s)), - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Token"), - Ast.IdLid (_loc, "extract_string")))), - Ast.ExId (_loc, Ast.IdLid (_loc, s)))), + (Ast.BiEq (_loc, + (Ast.PaId (_loc, (Ast.IdLid (_loc, s)))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Token")), + (Ast.IdLid (_loc, "extract_string")))))))), + (Ast.ExId (_loc, (Ast.IdLid (_loc, s)))))))), act)), i) | { pattern = Some p; text = TXtok (_, _, _) } -> @@ -11096,53 +11273,54 @@ module G = ((Some (match tok_match_pl with | None -> - ((Ast.ExId (_loc, Ast.IdLid (_loc, id))), p) + ((Ast.ExId (_loc, (Ast.IdLid (_loc, id)))), + p) | Some ((tok_pl, match_pl)) -> ((Ast.ExCom (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, id)), + (Ast.ExId (_loc, (Ast.IdLid (_loc, id)))), tok_pl)), (Ast.PaCom (_loc, p, match_pl))))), act, (succ i)) | _ -> accu) (None, act, 0) psl in let e = - let e1 = Ast.ExTyc (_loc, act, Ast.TyQuo (_loc, rtvar)) in + let e1 = Ast.ExTyc (_loc, act, (Ast.TyQuo (_loc, rtvar))) in let e2 = match tok_match_pl with | None -> e1 | Some ((Ast.ExCom (_, t1, t2), Ast.PaCom (_, p1, p2))) -> Ast.ExMat (_loc, - Ast.ExTup (_loc, Ast.ExCom (_loc, t1, t2)), - Ast.McOr (_loc, - Ast.McArr (_loc, - Ast.PaTup (_loc, Ast.PaCom (_loc, p1, p2)), - Ast.ExNil _loc, e1), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, - Ast.ExAsf _loc))) + (Ast.ExTup (_loc, (Ast.ExCom (_loc, t1, t2)))), + (Ast.McOr (_loc, + (Ast.McArr (_loc, + (Ast.PaTup (_loc, (Ast.PaCom (_loc, p1, p2)))), + (Ast.ExNil _loc), e1)), + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), + (Ast.ExAsf _loc)))))) | Some ((tok, match_)) -> Ast.ExMat (_loc, tok, - Ast.McOr (_loc, - Ast.McArr (_loc, match_, Ast.ExNil _loc, e1), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, - Ast.ExAsf _loc))) + (Ast.McOr (_loc, + (Ast.McArr (_loc, match_, (Ast.ExNil _loc), e1)), + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), + (Ast.ExAsf _loc)))))) in Ast.ExFun (_loc, - Ast.McArr (_loc, - Ast.PaTyc (_loc, locid, - Ast.TyId (_loc, - Ast.IdAcc (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Loc")), - Ast.IdLid (_loc, "t")))), - Ast.ExNil _loc, e2)) in + (Ast.McArr (_loc, + (Ast.PaTyc (_loc, locid, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Loc")))), + (Ast.IdLid (_loc, "t")))))))), + (Ast.ExNil _loc), e2))) in let (txt, _) = List.fold_left (fun (txt, i) s -> match s.pattern with | None | Some (Ast.PaAny _) -> ((Ast.ExFun (_loc, - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, - txt))), + (Ast.McArr (_loc, (Ast.PaAny _loc), + (Ast.ExNil _loc), txt)))), i) | Some (Ast.PaAli (_, @@ -11152,39 +11330,40 @@ module G = let p = make_ctyp_patt s.styp tvar p in ((Ast.ExFun (_loc, - Ast.McArr (_loc, p, Ast.ExNil _loc, txt))), + (Ast.McArr (_loc, p, (Ast.ExNil _loc), txt)))), i) | Some p when Ast.is_irrefut_patt p -> let p = make_ctyp_patt s.styp tvar p in ((Ast.ExFun (_loc, - Ast.McArr (_loc, p, Ast.ExNil _loc, txt))), + (Ast.McArr (_loc, p, (Ast.ExNil _loc), txt)))), i) | Some _ -> let p = make_ctyp_patt s.styp tvar (Ast.PaId (_loc, - Ast.IdLid (_loc, "__camlp4_" ^ (string_of_int i)))) + (Ast.IdLid (_loc, + ("__camlp4_" ^ (string_of_int i)))))) in ((Ast.ExFun (_loc, - Ast.McArr (_loc, p, Ast.ExNil _loc, txt))), + (Ast.McArr (_loc, p, (Ast.ExNil _loc), txt)))), (succ i))) (e, 0) psl in let txt = if !meta_action then Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Obj"), - Ast.IdLid (_loc, "magic"))), - MetaAst.Expr.meta_expr _loc txt) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Obj")), + (Ast.IdLid (_loc, "magic")))))), + (MetaAst.Expr.meta_expr _loc txt)) else txt in Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Action"), - Ast.IdLid (_loc, "mk")))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Action")), + (Ast.IdLid (_loc, "mk")))))))), txt) let srules loc t rl tvar = @@ -11201,150 +11380,154 @@ module G = List.fold_right (fun t el -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - make_expr entry "" t), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), + (make_expr entry "" t))), el)) - tl (Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) + tl (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]")))) in Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Smeta"))), - Ast.ExStr (_loc, n)), - el), - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Action"), - Ast.IdLid (_loc, "mk")))), - make_ctyp_expr t tvar e)) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Smeta")))))), + (Ast.ExStr (_loc, n)))), + el)), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Action")), + (Ast.IdLid (_loc, "mk")))))))), + (make_ctyp_expr t tvar e)))) | TXlist (_loc, min, t, ts) -> let txt = make_expr entry "" t.text in (match (min, ts) with | (false, None) -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Slist0"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Slist0")))))), txt) | (true, None) -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Slist1"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Slist1")))))), txt) | (false, Some s) -> let x = make_expr entry tvar s.text in Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Slist0sep"))), - txt), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Slist0sep")))))), + txt)), x) | (true, Some s) -> let x = make_expr entry tvar s.text in Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Slist1sep"))), - txt), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Slist1sep")))))), + txt)), x)) | TXnext _loc -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Snext"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Snext"))))) | TXnterm (_loc, n, lev) -> (match lev with | Some lab -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Snterml"))), - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Entry"), - Ast.IdLid (_loc, "obj")))), - Ast.ExTyc (_loc, n.expr, - Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Entry")), - Ast.IdLid (_loc, "t"))), - Ast.TyQuo (_loc, n.tvar))))), - Ast.ExStr (_loc, lab)) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Snterml")))))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Entry")), + (Ast.IdLid (_loc, "obj")))))))), + (Ast.ExTyc (_loc, n.expr, + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Entry")))), + (Ast.IdLid (_loc, "t")))))), + (Ast.TyQuo (_loc, n.tvar)))))))))), + (Ast.ExStr (_loc, lab))) | None -> if n.tvar = tvar then Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Sself"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Sself"))))) else Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Snterm"))), - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Entry"), - Ast.IdLid (_loc, "obj")))), - Ast.ExTyc (_loc, n.expr, - Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Entry")), - Ast.IdLid (_loc, "t"))), - Ast.TyQuo (_loc, n.tvar)))))) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Snterm")))))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Entry")), + (Ast.IdLid (_loc, "obj")))))))), + (Ast.ExTyc (_loc, n.expr, + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Entry")))), + (Ast.IdLid (_loc, "t")))))), + (Ast.TyQuo (_loc, n.tvar)))))))))) | TXopt (_loc, t) -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Sopt"))), - make_expr entry "" t) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Sopt")))))), + (make_expr entry "" t)) | TXtry (_loc, t) -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Stry"))), - make_expr entry "" t) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Stry")))))), + (make_expr entry "" t)) | TXrules (_loc, rl) -> Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdLid (_loc, "srules"))), - entry.expr), - make_expr_rules _loc entry rl "") + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdLid (_loc, "srules")))))), + entry.expr)), + (make_expr_rules _loc entry rl "")) | TXself _loc -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Sself"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Sself"))))) | TXkwd (_loc, kwd) -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Skeyword"))), - Ast.ExStr (_loc, kwd)) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Skeyword")))))), + (Ast.ExStr (_loc, kwd))) | TXtok (_loc, match_fun, descr) -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Stoken"))), - Ast.ExTup (_loc, - Ast.ExCom (_loc, match_fun, - Ast.ExStr (_loc, Ast.safe_string_escaped descr)))) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Stoken")))))), + (Ast.ExTup (_loc, + (Ast.ExCom (_loc, match_fun, + (Ast.ExStr (_loc, (Ast.safe_string_escaped descr)))))))) and make_expr_rules _loc n rl tvar = List.fold_left (fun txt (sl, ac) -> @@ -11354,26 +11537,28 @@ module G = let x = make_expr n tvar t in Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "::")), x), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), x)), txt)) - sl (Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) + sl (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]")))) in Ast.ExApp (_loc, - Ast.ExApp (_loc, Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - Ast.ExTup (_loc, Ast.ExCom (_loc, sl, ac))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), + (Ast.ExTup (_loc, (Ast.ExCom (_loc, sl, ac)))))), txt)) - (Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) rl + (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]")))) rl let expr_of_delete_rule _loc n sl = let sl = List.fold_right (fun s e -> Ast.ExApp (_loc, - Ast.ExApp (_loc, Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - make_expr n "" s.text), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), + (make_expr n "" s.text))), e)) - sl (Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) + sl (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]")))) in ((n.expr), sl) let rec tvar_of_ident = @@ -11472,19 +11657,19 @@ module G = let _loc = e.name.loc in Ast.ExTyc (_loc, x.expr, - Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Entry")), - Ast.IdLid (_loc, "t"))), - Ast.TyQuo (_loc, x.tvar))) in + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Entry")))), + (Ast.IdLid (_loc, "t")))))), + (Ast.TyQuo (_loc, x.tvar))))) in let pos = match e.pos with | Some pos -> - Ast.ExApp (_loc, Ast.ExId (_loc, Ast.IdUid (_loc, "Some")), - pos) - | None -> Ast.ExId (_loc, Ast.IdUid (_loc, "None")) in + Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "Some")))), pos) + | None -> Ast.ExId (_loc, (Ast.IdUid (_loc, "None"))) in let txt = List.fold_right (fun level txt -> @@ -11492,28 +11677,29 @@ module G = match level.label with | Some lab -> Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "Some")), - Ast.ExStr (_loc, lab)) - | None -> Ast.ExId (_loc, Ast.IdUid (_loc, "None")) in + (Ast.ExId (_loc, (Ast.IdUid (_loc, "Some")))), + (Ast.ExStr (_loc, lab))) + | None -> Ast.ExId (_loc, (Ast.IdUid (_loc, "None"))) in let ass = match level.assoc with | Some ass -> Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "Some")), ass) - | None -> Ast.ExId (_loc, Ast.IdUid (_loc, "None")) in + (Ast.ExId (_loc, (Ast.IdUid (_loc, "Some")))), ass) + | None -> Ast.ExId (_loc, (Ast.IdUid (_loc, "None"))) in let txt = let rl = srules _loc e.name.tvar level.rules e.name.tvar in let e = make_expr_rules _loc e.name rl e.name.tvar in Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - Ast.ExTup (_loc, - Ast.ExCom (_loc, lab, Ast.ExCom (_loc, ass, e)))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "::")))), + (Ast.ExTup (_loc, + (Ast.ExCom (_loc, lab, + (Ast.ExCom (_loc, ass, e)))))))), txt) in txt) - e.levels (Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) + e.levels (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]")))) in (ent, pos, txt) let let_in_of_extend _loc gram gl el args = @@ -11542,28 +11728,28 @@ module G = | Ast.ExId (_, (Ast.IdLid (_, i))) -> i | _ -> failwith "internal error in the Grammar extension") in - Ast.BiEq (_loc, Ast.PaId (_loc, Ast.IdLid (_loc, i)), - Ast.ExTyc (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdLid (_loc, "grammar_entry_create")), - Ast.ExStr (_loc, i)), - Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Entry")), - Ast.IdLid (_loc, "t"))), - Ast.TyQuo (_loc, x)))) in + Ast.BiEq (_loc, (Ast.PaId (_loc, (Ast.IdLid (_loc, i)))), + (Ast.ExTyc (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "grammar_entry_create")))), + (Ast.ExStr (_loc, i)))), + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Entry")))), + (Ast.IdLid (_loc, "t")))))), + (Ast.TyQuo (_loc, x))))))) in let expr_of_name { expr = e; tvar = x; loc = _loc } = Ast.ExTyc (_loc, e, - Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdUid (_loc, "Entry")), - Ast.IdLid (_loc, "t"))), - Ast.TyQuo (_loc, x))) in + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdUid (_loc, "Entry")))), + (Ast.IdLid (_loc, "t")))))), + (Ast.TyQuo (_loc, x))))) in let e = (match ll with | [] -> args @@ -11572,30 +11758,31 @@ module G = List.fold_right (fun name acc -> Ast.BiAnd (_loc, acc, - local_binding_of_name name)) + (local_binding_of_name name))) xs (local_binding_of_name x) in let entry_mk = (match gram with | Some g -> Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Entry"), - Ast.IdLid (_loc, "mk")))), - Ast.ExId (_loc, g)) + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Entry")), + (Ast.IdLid (_loc, "mk")))))))), + (Ast.ExId (_loc, g))) | None -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Entry"), - Ast.IdLid (_loc, "mk"))))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Entry")), + (Ast.IdLid (_loc, "mk")))))))) in Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, - Ast.PaId (_loc, - Ast.IdLid (_loc, "grammar_entry_create")), - entry_mk), - Ast.ExLet (_loc, Ast.ReNil, locals, args))) + (Ast.BiEq (_loc, + (Ast.PaId (_loc, + (Ast.IdLid (_loc, "grammar_entry_create")))), + entry_mk)), + (Ast.ExLet (_loc, Ast.ReNil, locals, args)))) in (match nl with | [] -> e @@ -11604,10 +11791,11 @@ module G = List.fold_right (fun name acc -> Ast.BiAnd (_loc, acc, - Ast.BiEq (_loc, Ast.PaAny _loc, - expr_of_name name))) + (Ast.BiEq (_loc, (Ast.PaAny _loc), + (expr_of_name name))))) xs - (Ast.BiEq (_loc, Ast.PaAny _loc, expr_of_name x)) + (Ast.BiEq (_loc, (Ast.PaAny _loc), + (expr_of_name x))) in Ast.ExLet (_loc, Ast.ReNil, globals, e))) class subst gmod = @@ -11630,41 +11818,42 @@ module G = let (ent, pos, txt) = text_of_entry e.name.loc e in let e = Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdLid (_loc, "extend"))), - ent), - Ast.ExApp (_loc, - Ast.ExFun (_loc, - Ast.McArr (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "()")), - Ast.ExNil _loc, - Ast.ExTup (_loc, Ast.ExCom (_loc, pos, txt)))), - Ast.ExId (_loc, Ast.IdUid (_loc, "()")))) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdLid (_loc, "extend")))))), + ent)), + (Ast.ExApp (_loc, + (Ast.ExFun (_loc, + (Ast.McArr (_loc, + (Ast.PaId (_loc, (Ast.IdUid (_loc, "()")))), + (Ast.ExNil _loc), + (Ast.ExTup (_loc, + (Ast.ExCom (_loc, pos, txt)))))))), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))))))) in if !split_ext then Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, - Ast.PaId (_loc, Ast.IdLid (_loc, "aux")), - Ast.ExFun (_loc, - Ast.McArr (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, "()")), - Ast.ExNil _loc, e))), - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "aux")), - Ast.ExId (_loc, Ast.IdUid (_loc, "()")))) + (Ast.BiEq (_loc, + (Ast.PaId (_loc, (Ast.IdLid (_loc, "aux")))), + (Ast.ExFun (_loc, + (Ast.McArr (_loc, + (Ast.PaId (_loc, (Ast.IdUid (_loc, "()")))), + (Ast.ExNil _loc), e)))))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, (Ast.IdLid (_loc, "aux")))), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))))))) else e) el in match el with - | [] -> Ast.ExId (_loc, Ast.IdUid (_loc, "()")) + | [] -> Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))) | [ e ] -> e | e :: el -> Ast.ExSeq (_loc, - List.fold_left (fun acc x -> Ast.ExSem (_loc, acc, x)) e - el) + (List.fold_left (fun acc x -> Ast.ExSem (_loc, acc, x)) e + el)) in subst_gmod (let_in_of_extend _loc gram gl el args) gmod let wildcarder = @@ -11685,15 +11874,15 @@ module G = if Ast.is_irrefut_patt p' then Ast.ExFun (_loc, - Ast.McArr (_loc, p', Ast.ExNil _loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "True")))) + (Ast.McArr (_loc, p', (Ast.ExNil _loc), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "True"))))))) else Ast.ExFun (_loc, - Ast.McOr (_loc, - Ast.McArr (_loc, p', Ast.ExNil _loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "True"))), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "False"))))) in + (Ast.McOr (_loc, + (Ast.McArr (_loc, p', (Ast.ExNil _loc), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "True")))))), + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "False"))))))))) in let descr = string_of_patt p' in let text = TXtok (_loc, match_fun, descr) in { used = []; text = text; styp = t; pattern = Some p; } @@ -11830,9 +12019,9 @@ module G = 'semi_sep Gram.Entry.t)) ], (Gram.Action.mk (fun _ (e : 'entry) - (_loc : Gram.Loc.t) -> (e : 'e__15)))) ]) ], + (_loc : Gram.Loc.t) -> (e : 'e__16)))) ]) ], (Gram.Action.mk - (fun (el : 'e__15 list) + (fun (el : 'e__16 list) (global_list : 'global option) ((gram, g) : 'extend_header) (_loc : Gram.Loc.t) -> @@ -11851,12 +12040,12 @@ module G = (Gram.Entry.obj (name : 'name Gram.Entry.t)); Gram.Skeyword ":"; Gram.Slist0sep + ((Gram.Snterm + (Gram.Entry.obj + (symbol : 'symbol Gram.Entry.t))), (Gram.Snterm (Gram.Entry.obj - (symbol : 'symbol Gram.Entry.t)), - Gram.Snterm - (Gram.Entry.obj - (semi_sep : 'semi_sep Gram.Entry.t))) ], + (semi_sep : 'semi_sep Gram.Entry.t)))) ], (Gram.Action.mk (fun (sl : 'symbol list) _ (n : 'name) (g : 'qualuid) (_loc : Gram.Loc.t) -> @@ -11864,12 +12053,13 @@ module G = in subst_gmod (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, gm), - Ast.IdLid (_loc, "delete_rule"))), - e), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, gm)), + (Ast.IdLid (_loc, + "delete_rule")))))), + e)), b)) g : 'delete_rule_body)))) ]) ])) @@ -11888,7 +12078,7 @@ module G = (fun (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with - | UIDENT "GLOBAL" -> (() : 'e__16) + | UIDENT "GLOBAL" -> (() : 'e__17) | _ -> assert false))); ([ Gram.Stoken (((function @@ -11899,7 +12089,7 @@ module G = (fun (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with - | LIDENT ((_)) -> (() : 'e__16) + | LIDENT ((_)) -> (() : 'e__17) | _ -> assert false))) ] ], (Gram.Action.mk (fun _ (_loc : Gram.Loc.t) -> @@ -11923,7 +12113,9 @@ module G = (fun (xs : 'qualuid) _ (x : Gram.Token.t) (_loc : Gram.Loc.t) -> (let x = Gram.Token.extract_string x - in Ast.IdAcc (_loc, Ast.IdUid (_loc, x), xs) : + in + Ast.IdAcc (_loc, (Ast.IdUid (_loc, x)), + xs) : 'qualuid)))) ]) ])) ()); Gram.extend (qualuid : 'qualuid Gram.Entry.t) @@ -11940,7 +12132,7 @@ module G = (fun (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with - | UIDENT "GLOBAL" -> (() : 'e__17) + | UIDENT "GLOBAL" -> (() : 'e__18) | _ -> assert false))); ([ Gram.Stoken (((function @@ -11951,7 +12143,7 @@ module G = (fun (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with - | LIDENT ((_)) -> (() : 'e__17) + | LIDENT ((_)) -> (() : 'e__18) | _ -> assert false))) ] ], (Gram.Action.mk (fun _ (_loc : Gram.Loc.t) -> @@ -11975,7 +12167,9 @@ module G = (fun (xs : 'qualuid) _ (x : Gram.Token.t) (_loc : Gram.Loc.t) -> (let x = Gram.Token.extract_string x - in Ast.IdAcc (_loc, Ast.IdUid (_loc, x), xs) : + in + Ast.IdAcc (_loc, (Ast.IdUid (_loc, x)), + xs) : 'qualuid)))) ]) ])) ()); Gram.extend (qualid : 'qualid Gram.Entry.t) @@ -12004,7 +12198,9 @@ module G = (fun (xs : 'qualid) _ (x : Gram.Token.t) (_loc : Gram.Loc.t) -> (let x = Gram.Token.extract_string x - in Ast.IdAcc (_loc, Ast.IdUid (_loc, x), xs) : + in + Ast.IdAcc (_loc, (Ast.IdUid (_loc, x)), + xs) : 'qualid)))) ]) ])) ()); Gram.extend (t_qualid : 't_qualid Gram.Entry.t) @@ -12051,7 +12247,9 @@ module G = (fun (xs : 't_qualid) _ (x : Gram.Token.t) (_loc : Gram.Loc.t) -> (let x = Gram.Token.extract_string x - in Ast.IdAcc (_loc, Ast.IdUid (_loc, x), xs) : + in + Ast.IdAcc (_loc, (Ast.IdUid (_loc, x)), + xs) : 't_qualid)))) ]) ])) ()); Gram.extend (global : 'global Gram.Entry.t) @@ -12115,14 +12313,15 @@ module G = match __camlp4_0 with | UIDENT "LEVEL" -> (Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "Level"))))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, + "Grammar")), + (Ast.IdUid (_loc, "Level")))))))))), n) : 'position) | _ -> assert false))); @@ -12139,14 +12338,15 @@ module G = match __camlp4_0 with | UIDENT "AFTER" -> (Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "After"))))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, + "Grammar")), + (Ast.IdUid (_loc, "After")))))))))), n) : 'position) | _ -> assert false))); @@ -12163,14 +12363,16 @@ module G = match __camlp4_0 with | UIDENT "BEFORE" -> (Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "Before"))))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, + "Grammar")), + (Ast.IdUid (_loc, + "Before")))))))))), n) : 'position) | _ -> assert false))); @@ -12185,13 +12387,13 @@ module G = match __camlp4_0 with | UIDENT "LAST" -> (Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "Last"))))) : + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Grammar")), + (Ast.IdUid (_loc, "Last"))))))))) : 'position) | _ -> assert false))); ([ Gram.Stoken @@ -12205,13 +12407,13 @@ module G = match __camlp4_0 with | UIDENT "FIRST" -> (Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "First"))))) : + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Grammar")), + (Ast.IdUid (_loc, "First"))))))))) : 'position) | _ -> assert false))) ]) ])) ()); @@ -12221,10 +12423,10 @@ module G = [ (None, None, [ ([ Gram.Skeyword "["; Gram.Slist0sep - (Gram.Snterm - (Gram.Entry.obj - (level : 'level Gram.Entry.t)), - Gram.Skeyword "|"); + ((Gram.Snterm + (Gram.Entry.obj + (level : 'level Gram.Entry.t))), + (Gram.Skeyword "|")); Gram.Skeyword "]" ], (Gram.Action.mk (fun _ (ll : 'level list) _ (_loc : Gram.Loc.t) @@ -12246,7 +12448,7 @@ module G = (_loc : Gram.Loc.t) -> (let x = Gram.Token.extract_string x - in x : 'e__18)))) ]); + in x : 'e__19)))) ]); Gram.Sopt (Gram.Snterm (Gram.Entry.obj @@ -12256,7 +12458,7 @@ module G = (rule_list : 'rule_list Gram.Entry.t)) ], (Gram.Action.mk (fun (rules : 'rule_list) (ass : 'assoc option) - (lab : 'e__18 option) (_loc : Gram.Loc.t) -> + (lab : 'e__19 option) (_loc : Gram.Loc.t) -> ({ label = lab; assoc = ass; rules = rules; } : 'level)))) ]) ])) ()); @@ -12275,13 +12477,13 @@ module G = match __camlp4_0 with | UIDENT "NONA" -> (Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "NonA"))))) : + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Grammar")), + (Ast.IdUid (_loc, "NonA"))))))))) : 'assoc) | _ -> assert false))); ([ Gram.Stoken @@ -12295,13 +12497,13 @@ module G = match __camlp4_0 with | UIDENT "RIGHTA" -> (Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "RightA"))))) : + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Grammar")), + (Ast.IdUid (_loc, "RightA"))))))))) : 'assoc) | _ -> assert false))); ([ Gram.Stoken @@ -12315,13 +12517,13 @@ module G = match __camlp4_0 with | UIDENT "LEFTA" -> (Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Camlp4"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Sig"), - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Grammar"), - Ast.IdUid (_loc, "LeftA"))))) : + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Camlp4")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Sig")), + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Grammar")), + (Ast.IdUid (_loc, "LeftA"))))))))) : 'assoc) | _ -> assert false))) ]) ])) ()); @@ -12331,9 +12533,9 @@ module G = [ (None, None, [ ([ Gram.Skeyword "["; Gram.Slist1sep - (Gram.Snterm - (Gram.Entry.obj (rule : 'rule Gram.Entry.t)), - Gram.Skeyword "|"); + ((Gram.Snterm + (Gram.Entry.obj (rule : 'rule Gram.Entry.t))), + (Gram.Skeyword "|")); Gram.Skeyword "]" ], (Gram.Action.mk (fun _ (rules : 'rule list) _ @@ -12350,22 +12552,22 @@ module G = (None, [ (None, None, [ ([ Gram.Slist0sep + ((Gram.Snterm + (Gram.Entry.obj + (psymbol : 'psymbol Gram.Entry.t))), (Gram.Snterm (Gram.Entry.obj - (psymbol : 'psymbol Gram.Entry.t)), - Gram.Snterm - (Gram.Entry.obj - (semi_sep : 'semi_sep Gram.Entry.t))) ], + (semi_sep : 'semi_sep Gram.Entry.t)))) ], (Gram.Action.mk (fun (psl : 'psymbol list) (_loc : Gram.Loc.t) -> ({ prod = psl; action = None; } : 'rule)))); ([ Gram.Slist0sep + ((Gram.Snterm + (Gram.Entry.obj + (psymbol : 'psymbol Gram.Entry.t))), (Gram.Snterm (Gram.Entry.obj - (psymbol : 'psymbol Gram.Entry.t)), - Gram.Snterm - (Gram.Entry.obj - (semi_sep : 'semi_sep Gram.Entry.t))); + (semi_sep : 'semi_sep Gram.Entry.t)))); Gram.Skeyword "->"; Gram.Snterm (Gram.Entry.obj (expr : 'expr Gram.Entry.t)) ], @@ -12400,8 +12602,8 @@ module G = -> mk_tok _loc (Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdUid (_loc, u)), + (Ast.PaId (_loc, + (Ast.IdUid (_loc, u)))), p)) s.styp | _ -> { (s) with pattern = Some p; } : @@ -12429,10 +12631,10 @@ module G = | UIDENT "LEVEL" -> (let s = Gram.Token.extract_string s - in s : 'e__19) + in s : 'e__20) | _ -> assert false))) ]) ], (Gram.Action.mk - (fun (lev : 'e__19 option) (i : Gram.Token.t) + (fun (lev : 'e__20 option) (i : Gram.Token.t) (_loc : Gram.Loc.t) -> (let i = Gram.Token.extract_string i in let name = @@ -12467,19 +12669,21 @@ module G = -> let match_fun = Ast.ExFun (_loc, - Ast.McOr (_loc, - Ast.McArr (_loc, p', - Ast.ExNil _loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "True"))), - Ast.McArr (_loc, Ast.PaAny _loc, - Ast.ExNil _loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "False"))))) in + (Ast.McOr (_loc, + (Ast.McArr (_loc, p', + (Ast.ExNil _loc), + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "True")))))), + (Ast.McArr (_loc, + (Ast.PaAny _loc), + (Ast.ExNil _loc), + (Ast.ExId (_loc, + (Ast.IdUid (_loc, + "False"))))))))) in let p' = Ast.PaAli (_loc, p', - Ast.PaId (_loc, - Ast.IdLid (_loc, p))) in + (Ast.PaId (_loc, + (Ast.IdLid (_loc, p))))) in let descr = u ^ " _" in let text = TXtok (_loc, match_fun, descr) @@ -12497,7 +12701,7 @@ module G = pattern = Some (Ast.PaId (_loc, - Ast.IdLid (_loc, p))); + (Ast.IdLid (_loc, p)))); } : 'psymbol)))) ]) ])) ()); @@ -12535,7 +12739,7 @@ module G = | UIDENT "OPT" -> (let () = check_not_tok s in let styp = - STapp (_loc, STlid (_loc, "option"), + STapp (_loc, (STlid (_loc, "option")), s.styp) in let text = TXopt (_loc, s.text) in @@ -12568,10 +12772,10 @@ module G = (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with - | UIDENT "SEP" -> (t : 'e__21) + | UIDENT "SEP" -> (t : 'e__22) | _ -> assert false))) ]) ], (Gram.Action.mk - (fun (sep : 'e__21 option) (s : 'symbol) + (fun (sep : 'e__22 option) (s : 'symbol) (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with @@ -12582,7 +12786,7 @@ module G = | Some symb -> symb.used @ s.used | None -> s.used) in let styp = - STapp (_loc, STlid (_loc, "list"), + STapp (_loc, (STlid (_loc, "list")), s.styp) in let text = slist _loc true sep s in @@ -12615,10 +12819,10 @@ module G = (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with - | UIDENT "SEP" -> (t : 'e__20) + | UIDENT "SEP" -> (t : 'e__21) | _ -> assert false))) ]) ], (Gram.Action.mk - (fun (sep : 'e__20 option) (s : 'symbol) + (fun (sep : 'e__21 option) (s : 'symbol) (__camlp4_0 : Gram.Token.t) (_loc : Gram.Loc.t) -> match __camlp4_0 with @@ -12629,7 +12833,7 @@ module G = | Some symb -> symb.used @ s.used | None -> s.used) in let styp = - STapp (_loc, STlid (_loc, "list"), + STapp (_loc, (STlid (_loc, "list")), s.styp) in let text = slist _loc false sep s in @@ -12668,10 +12872,10 @@ module G = | UIDENT "LEVEL" -> (let s = Gram.Token.extract_string s - in s : 'e__23) + in s : 'e__24) | _ -> assert false))) ]) ], (Gram.Action.mk - (fun (lev : 'e__23 option) (n : 'name) + (fun (lev : 'e__24 option) (n : 'name) (_loc : Gram.Loc.t) -> ({ used = [ n.tvar ]; @@ -12705,15 +12909,15 @@ module G = | UIDENT "LEVEL" -> (let s = Gram.Token.extract_string s - in s : 'e__22) + in s : 'e__23) | _ -> assert false))) ]) ], (Gram.Action.mk - (fun (lev : 'e__22 option) (il : 'qualid) _ + (fun (lev : 'e__23 option) (il : 'qualid) _ (i : Gram.Token.t) (_loc : Gram.Loc.t) -> (let i = Gram.Token.extract_string i in let n = mk_name _loc - (Ast.IdAcc (_loc, Ast.IdUid (_loc, i), + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, i)), il)) in { @@ -12755,34 +12959,38 @@ module G = AntiquotSyntax.parse_expr _loc s in let match_fun = Ast.ExFun (_loc, - Ast.McOr (_loc, - Ast.McArr (_loc, - Ast.PaApp (_loc, - Ast.PaId (_loc, - Ast.IdUid (_loc, x)), - Ast.PaId (_loc, - Ast.IdLid (_loc, "camlp4_x"))), - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdLid (_loc, "=")), - Ast.ExId (_loc, - Ast.IdLid (_loc, - "camlp4_x"))), - e), - Ast.ExId (_loc, - Ast.IdUid (_loc, "True"))), - Ast.McArr (_loc, Ast.PaAny _loc, - Ast.ExNil _loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "False"))))) in + (Ast.McOr (_loc, + (Ast.McArr (_loc, + (Ast.PaApp (_loc, + (Ast.PaId (_loc, + (Ast.IdUid (_loc, x)))), + (Ast.PaId (_loc, + (Ast.IdLid (_loc, + "camlp4_x")))))), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdLid (_loc, + "=")))), + (Ast.ExId (_loc, + (Ast.IdLid (_loc, + "camlp4_x")))))), + e)), + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "True")))))), + (Ast.McArr (_loc, + (Ast.PaAny _loc), + (Ast.ExNil _loc), + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "False"))))))))) in let descr = "$" ^ (x ^ (" " ^ s)) in let text = TXtok (_loc, match_fun, descr) in let p = Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, x)), - Ast.PaTup (_loc, Ast.PaAny _loc)) + (Ast.PaId (_loc, + (Ast.IdUid (_loc, x)))), + (Ast.PaTup (_loc, (Ast.PaAny _loc)))) in { used = []; @@ -12806,8 +13014,9 @@ module G = in mk_tok _loc (Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, x)), - Ast.PaStr (_loc, s))) + (Ast.PaId (_loc, + (Ast.IdUid (_loc, x)))), + (Ast.PaStr (_loc, s)))) (STtok _loc) : 'symbol)))); ([ Gram.Stoken @@ -12819,8 +13028,9 @@ module G = in mk_tok _loc (Ast.PaApp (_loc, - Ast.PaId (_loc, Ast.IdUid (_loc, x)), - Ast.PaTup (_loc, Ast.PaAny _loc))) + (Ast.PaId (_loc, + (Ast.IdUid (_loc, x)))), + (Ast.PaTup (_loc, (Ast.PaAny _loc))))) (STstring_tok _loc) : 'symbol)))); ([ Gram.Skeyword "`"; @@ -12831,9 +13041,9 @@ module G = (mk_tok _loc p (STtok _loc) : 'symbol)))); ([ Gram.Skeyword "["; Gram.Slist0sep - (Gram.Snterm - (Gram.Entry.obj (rule : 'rule Gram.Entry.t)), - Gram.Skeyword "|"); + ((Gram.Snterm + (Gram.Entry.obj (rule : 'rule Gram.Entry.t))), + (Gram.Skeyword "|")); Gram.Skeyword "]" ], (Gram.Action.mk (fun _ (rl : 'rule list) _ (_loc : Gram.Loc.t) @@ -12845,7 +13055,7 @@ module G = { used = used_of_rule_list rl; text = - TXrules (_loc, srules _loc t rl ""); + TXrules (_loc, (srules _loc t rl "")); styp = STquo (_loc, t); pattern = None; } : @@ -12897,7 +13107,7 @@ module G = (Gram.Action.mk (fun _ (p2 : 'comma_patt) _ (p1 : 'pattern) _ (_loc : Gram.Loc.t) -> - (Ast.PaTup (_loc, Ast.PaCom (_loc, p1, p2)) : + (Ast.PaTup (_loc, (Ast.PaCom (_loc, p1, p2))) : 'pattern)))); ([ Gram.Skeyword "("; Gram.Sself; Gram.Skeyword ")" ], (Gram.Action.mk @@ -12913,7 +13123,7 @@ module G = (Gram.Action.mk (fun (i : Gram.Token.t) (_loc : Gram.Loc.t) -> (let i = Gram.Token.extract_string i - in Ast.PaId (_loc, Ast.IdLid (_loc, i)) : + in Ast.PaId (_loc, (Ast.IdLid (_loc, i))) : 'pattern)))) ]) ])) ()); Gram.extend (comma_patt : 'comma_patt Gram.Entry.t) @@ -12989,25 +13199,25 @@ module G = END; *) let sfold _loc n foldfun f e s = - let styp = STquo (_loc, new_type_var ()) in + let styp = STquo (_loc, (new_type_var ())) in let e = Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdLid (_loc, foldfun))), - f), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdLid (_loc, foldfun)))))), + f)), e) in let t = STapp (_loc, - STapp (_loc, - STtyp - (Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdLid (_loc, "fold"))), - Ast.TyAny _loc)), - s.styp), + (STapp (_loc, + (STtyp + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdLid (_loc, "fold")))))), + (Ast.TyAny _loc)))), + s.styp)), styp) in { @@ -13018,25 +13228,25 @@ module G = } let sfoldsep _loc n foldfun f e s sep = - let styp = STquo (_loc, new_type_var ()) in + let styp = STquo (_loc, (new_type_var ())) in let e = Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdLid (_loc, foldfun))), - f), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdLid (_loc, foldfun)))))), + f)), e) in let t = STapp (_loc, - STapp (_loc, - STtyp - (Ast.TyApp (_loc, - Ast.TyId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, gm), - Ast.IdLid (_loc, "foldsep"))), - Ast.TyAny _loc)), - s.styp), + (STapp (_loc, + (STtyp + (Ast.TyApp (_loc, + (Ast.TyId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, gm)), + (Ast.IdLid (_loc, "foldsep")))))), + (Ast.TyAny _loc)))), + s.styp)), styp) in { @@ -13173,7 +13383,7 @@ module G = (a_LIDENT : 'a_LIDENT Gram.Entry.t)) ], (Gram.Action.mk (fun (i : 'a_LIDENT) (_loc : Gram.Loc.t) -> - (Ast.ExId (_loc, Ast.IdLid (_loc, i)) : + (Ast.ExId (_loc, (Ast.IdLid (_loc, i))) : 'simple_expr)))) ]) ])) ())) @@ -13319,26 +13529,26 @@ Added statements: let substp _loc env = let rec loop = function - | Ast.ExApp (_, e1, e2) -> Ast.PaApp (_loc, loop e1, loop e2) + | Ast.ExApp (_, e1, e2) -> Ast.PaApp (_loc, (loop e1), (loop e2)) | Ast.ExNil _ -> Ast.PaNil _loc | Ast.ExId (_, (Ast.IdLid (_, x))) -> (try List.assoc x env - with | Not_found -> Ast.PaId (_loc, Ast.IdLid (_loc, x))) + with | Not_found -> Ast.PaId (_loc, (Ast.IdLid (_loc, x)))) | Ast.ExId (_, (Ast.IdUid (_, x))) -> (try List.assoc x env - with | Not_found -> Ast.PaId (_loc, Ast.IdUid (_loc, x))) + with | Not_found -> Ast.PaId (_loc, (Ast.IdUid (_loc, x)))) | Ast.ExInt (_, x) -> Ast.PaInt (_loc, x) | Ast.ExStr (_, s) -> Ast.PaStr (_loc, s) - | Ast.ExTup (_, x) -> Ast.PaTup (_loc, loop x) - | Ast.ExCom (_, x1, x2) -> Ast.PaCom (_loc, loop x1, loop x2) + | Ast.ExTup (_, x) -> Ast.PaTup (_loc, (loop x)) + | Ast.ExCom (_, x1, x2) -> Ast.PaCom (_loc, (loop x1), (loop x2)) | Ast.ExRec (_, bi, (Ast.ExNil _)) -> let rec substbi = (function | Ast.RbSem (_, b1, b2) -> - Ast.PaSem (_loc, substbi b1, substbi b2) - | Ast.RbEq (_, i, e) -> Ast.PaEq (_loc, i, loop e) + Ast.PaSem (_loc, (substbi b1), (substbi b2)) + | Ast.RbEq (_, i, e) -> Ast.PaEq (_loc, i, (loop e)) | _ -> bad_patt _loc) - in Ast.PaRec (_loc, substbi bi) + in Ast.PaRec (_loc, (substbi bi)) | _ -> bad_patt _loc in loop @@ -13860,7 +14070,7 @@ Added statements: (Gram.Entry.obj (endif : 'endif Gram.Entry.t)) ], (Gram.Action.mk (fun _ (_loc : Gram.Loc.t) -> - (Ast.ExId (_loc, Ast.IdUid (_loc, "()")) : + (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))) : 'else_expr)))); ([ Gram.Skeyword "ELSE"; Gram.Snterm @@ -13887,7 +14097,7 @@ Added statements: (Gram.Action.mk (fun _ (si : 'str_item) (_loc : Gram.Loc.t) -> - (SdStr si : 'e__24)))); + (SdStr si : 'e__25)))); ([ Gram.Snterm (Gram.Entry.obj (macro_def : @@ -13903,9 +14113,9 @@ Added statements: (fun a b -> Ast.StSem (_loc, a, b)) Then d : - 'e__24)))) ]) ], + 'e__25)))) ]) ], (Gram.Action.mk - (fun (sml : 'e__24 list) (_loc : Gram.Loc.t) -> + (fun (sml : 'e__25 list) (_loc : Gram.Loc.t) -> (sml : 'smlist_then)))) ]) ])) ()); Gram.extend (smlist_else : 'smlist_else Gram.Entry.t) @@ -13924,7 +14134,7 @@ Added statements: (Gram.Action.mk (fun _ (si : 'str_item) (_loc : Gram.Loc.t) -> - (SdStr si : 'e__25)))); + (SdStr si : 'e__26)))); ([ Gram.Snterm (Gram.Entry.obj (macro_def : @@ -13940,9 +14150,9 @@ Added statements: (fun a b -> Ast.StSem (_loc, a, b)) Else d : - 'e__25)))) ]) ], + 'e__26)))) ]) ], (Gram.Action.mk - (fun (sml : 'e__25 list) (_loc : Gram.Loc.t) -> + (fun (sml : 'e__26 list) (_loc : Gram.Loc.t) -> (sml : 'smlist_else)))) ]) ])) ()); Gram.extend (sglist_then : 'sglist_then Gram.Entry.t) @@ -13961,7 +14171,7 @@ Added statements: (Gram.Action.mk (fun _ (si : 'sig_item) (_loc : Gram.Loc.t) -> - (SdStr si : 'e__26)))); + (SdStr si : 'e__27)))); ([ Gram.Snterm (Gram.Entry.obj (macro_def_sig : @@ -13977,9 +14187,9 @@ Added statements: (fun a b -> Ast.SgSem (_loc, a, b)) Then d : - 'e__26)))) ]) ], + 'e__27)))) ]) ], (Gram.Action.mk - (fun (sgl : 'e__26 list) (_loc : Gram.Loc.t) -> + (fun (sgl : 'e__27 list) (_loc : Gram.Loc.t) -> (sgl : 'sglist_then)))) ]) ])) ()); Gram.extend (sglist_else : 'sglist_else Gram.Entry.t) @@ -13998,7 +14208,7 @@ Added statements: (Gram.Action.mk (fun _ (si : 'sig_item) (_loc : Gram.Loc.t) -> - (SdStr si : 'e__27)))); + (SdStr si : 'e__28)))); ([ Gram.Snterm (Gram.Entry.obj (macro_def_sig : @@ -14014,9 +14224,9 @@ Added statements: (fun a b -> Ast.SgSem (_loc, a, b)) Else d : - 'e__27)))) ]) ], + 'e__28)))) ]) ], (Gram.Action.mk - (fun (sgl : 'e__27 list) (_loc : Gram.Loc.t) -> + (fun (sgl : 'e__28 list) (_loc : Gram.Loc.t) -> (sgl : 'sglist_else)))) ]) ])) ()); Gram.extend (endif : 'endif Gram.Entry.t) @@ -14046,24 +14256,24 @@ Added statements: (Some (([], e)) : 'opt_macro_value)))); ([ Gram.Skeyword "("; Gram.Slist1sep - (Gram.srules opt_macro_value - [ ([ Gram.Stoken - (((function - | LIDENT ((_)) -> true - | _ -> false), - "LIDENT _")) ], - (Gram.Action.mk - (fun (x : Gram.Token.t) - (_loc : Gram.Loc.t) -> - (let x = - Gram.Token.extract_string x - in x : 'e__28)))) ], - Gram.Skeyword ","); + ((Gram.srules opt_macro_value + [ ([ Gram.Stoken + (((function + | LIDENT ((_)) -> true + | _ -> false), + "LIDENT _")) ], + (Gram.Action.mk + (fun (x : Gram.Token.t) + (_loc : Gram.Loc.t) -> + (let x = + Gram.Token.extract_string x + in x : 'e__29)))) ]), + (Gram.Skeyword ",")); Gram.Skeyword ")"; Gram.Skeyword "="; Gram.Snterm (Gram.Entry.obj (expr : 'expr Gram.Entry.t)) ], (Gram.Action.mk - (fun (e : 'expr) _ _ (pl : 'e__28 list) _ + (fun (e : 'expr) _ _ (pl : 'e__29 list) _ (_loc : Gram.Loc.t) -> (Some ((pl, e)) : 'opt_macro_value)))) ]) ])) ()); @@ -14124,39 +14334,51 @@ Added statements: Loc.to_tuple _loc in Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, - Ast.IdUid (_loc, "Loc"), - Ast.IdLid (_loc, "of_tuple"))), - Ast.ExTup (_loc, - Ast.ExCom (_loc, - Ast.ExStr (_loc, - Ast.safe_string_escaped a), - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExCom (_loc, - Ast.ExInt (_loc, - string_of_int b), - Ast.ExInt (_loc, - string_of_int c)), - Ast.ExInt (_loc, - string_of_int d)), - Ast.ExInt (_loc, - string_of_int e)), - Ast.ExInt (_loc, - string_of_int f)), - Ast.ExInt (_loc, - string_of_int g)), - if h - then - Ast.ExId (_loc, - Ast.IdUid (_loc, "True")) - else - Ast.ExId (_loc, - Ast.IdUid (_loc, "False")))))) : + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, + (Ast.IdUid (_loc, "Loc")), + (Ast.IdLid (_loc, "of_tuple")))))), + (Ast.ExTup (_loc, + (Ast.ExCom (_loc, + (Ast.ExStr (_loc, + (Ast.safe_string_escaped a))), + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom (_loc, + (Ast.ExCom + (_loc, + (Ast.ExInt + (_loc, + ( + string_of_int + b))), + (Ast.ExInt + (_loc, + ( + string_of_int + c))))), + (Ast.ExInt + (_loc, + (string_of_int + d))))), + (Ast.ExInt (_loc, + (string_of_int + e))))), + (Ast.ExInt (_loc, + (string_of_int f))))), + (Ast.ExInt (_loc, + (string_of_int g))))), + (if h + then + Ast.ExId (_loc, + (Ast.IdUid (_loc, + "True"))) + else + Ast.ExId (_loc, + (Ast.IdUid (_loc, + "False"))))))))))) : 'expr) | _ -> assert false))); ([ Gram.Stoken @@ -14170,8 +14392,8 @@ Added statements: match __camlp4_0 with | LIDENT "__FILE__" -> (Ast.ExStr (_loc, - Ast.safe_string_escaped - (Loc.file_name _loc)) : + (Ast.safe_string_escaped + (Loc.file_name _loc))) : 'expr) | _ -> assert false))) ]) ])) ()); @@ -14321,30 +14543,30 @@ module D = function | None -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Debug"), - Ast.IdLid (_loc, "mode"))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Debug")), + (Ast.IdLid (_loc, "mode"))))) | Some m -> Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, m), - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Debug"), - Ast.IdLid (_loc, "mode")))) + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, m)), + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Debug")), + (Ast.IdLid (_loc, "mode"))))))) let mk_debug _loc m fmt section args = let call = apply (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "Debug"), - Ast.IdLid (_loc, "printf"))), - Ast.ExStr (_loc, section)), - Ast.ExStr (_loc, fmt))) + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "Debug")), + (Ast.IdLid (_loc, "printf")))))), + (Ast.ExStr (_loc, section)))), + (Ast.ExStr (_loc, fmt)))) args in Ast.ExIfe (_loc, - Ast.ExApp (_loc, mk_debug_mode _loc m, - Ast.ExStr (_loc, section)), - call, Ast.ExId (_loc, Ast.IdUid (_loc, "()"))) + (Ast.ExApp (_loc, (mk_debug_mode _loc m), + (Ast.ExStr (_loc, section)))), + call, (Ast.ExId (_loc, (Ast.IdUid (_loc, "()"))))) let _ = let _ = (expr : 'expr Gram.Entry.t) in @@ -14369,7 +14591,7 @@ module D = "STRING _")); Gram.Slist0 (Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), ".")); Gram.Snterm (Gram.Entry.obj @@ -14385,16 +14607,16 @@ module D = match (x, (debug_mode section)) with | (None, false) -> Ast.ExId (_loc, - Ast.IdUid (_loc, "()")) + (Ast.IdUid (_loc, "()"))) | (Some e, false) -> e | (None, _) -> mk_debug _loc m fmt section args | (Some e, _) -> Ast.ExLet (_loc, Ast.ReNil, - Ast.BiEq (_loc, - Ast.PaId (_loc, - Ast.IdUid (_loc, "()")), - mk_debug _loc m fmt section args), + (Ast.BiEq (_loc, + (Ast.PaId (_loc, + (Ast.IdUid (_loc, "()")))), + (mk_debug _loc m fmt section args))), e) : 'expr)))) ]) ])) ()); @@ -14529,79 +14751,88 @@ module L = if Ast.is_irrefut_patt p then Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "List"), - Ast.IdLid (_loc, "map"))), - Ast.ExFun (_loc, Ast.McArr (_loc, p, Ast.ExNil _loc, e))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "List")), + (Ast.IdLid (_loc, "map")))))), + (Ast.ExFun (_loc, + (Ast.McArr (_loc, p, (Ast.ExNil _loc), e)))))), l) else Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "List"), - Ast.IdLid (_loc, "fold_right"))), - Ast.ExFun (_loc, - Ast.McOr (_loc, - Ast.McArr (_loc, p, - Ast.ExId (_loc, Ast.IdUid (_loc, "True")), - Ast.ExApp (_loc, - Ast.ExFun (_loc, - Ast.McArr (_loc, - Ast.PaId (_loc, Ast.IdLid (_loc, "x")), - Ast.ExNil _loc, - Ast.ExFun (_loc, - Ast.McArr (_loc, - Ast.PaId (_loc, Ast.IdLid (_loc, "xs")), - Ast.ExNil _loc, - Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "::")), - Ast.ExId (_loc, - Ast.IdLid (_loc, "x"))), - Ast.ExId (_loc, - Ast.IdLid (_loc, "xs"))))))), - e)), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, - Ast.ExFun (_loc, - Ast.McArr (_loc, - Ast.PaId (_loc, Ast.IdLid (_loc, "l")), - Ast.ExNil _loc, - Ast.ExId (_loc, Ast.IdLid (_loc, "l")))))))), - l), - Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "List")), + (Ast.IdLid (_loc, "fold_right")))))), + (Ast.ExFun (_loc, + (Ast.McOr (_loc, + (Ast.McArr (_loc, p, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "True")))), + (Ast.ExApp (_loc, + (Ast.ExFun (_loc, + (Ast.McArr (_loc, + (Ast.PaId (_loc, + (Ast.IdLid (_loc, "x")))), + (Ast.ExNil _loc), + (Ast.ExFun (_loc, + (Ast.McArr (_loc, + (Ast.PaId (_loc, + (Ast.IdLid (_loc, "xs")))), + (Ast.ExNil _loc), + (Ast.ExApp (_loc, + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, + "::")))), + (Ast.ExId (_loc, + (Ast.IdLid (_loc, + "x")))))), + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "xs")))))))))))))), + e)))), + (Ast.McArr (_loc, (Ast.PaAny _loc), + (Ast.ExNil _loc), + (Ast.ExFun (_loc, + (Ast.McArr (_loc, + (Ast.PaId (_loc, + (Ast.IdLid (_loc, "l")))), + (Ast.ExNil _loc), + (Ast.ExId (_loc, + (Ast.IdLid (_loc, "l")))))))))))))))), + l)), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]"))))) let filter _loc p b l = if Ast.is_irrefut_patt p then Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "List"), - Ast.IdLid (_loc, "filter"))), - Ast.ExFun (_loc, Ast.McArr (_loc, p, Ast.ExNil _loc, b))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "List")), + (Ast.IdLid (_loc, "filter")))))), + (Ast.ExFun (_loc, + (Ast.McArr (_loc, p, (Ast.ExNil _loc), b)))))), l) else Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "List"), - Ast.IdLid (_loc, "filter"))), - Ast.ExFun (_loc, - Ast.McOr (_loc, - Ast.McArr (_loc, p, - Ast.ExId (_loc, Ast.IdUid (_loc, "True")), b), - Ast.McArr (_loc, Ast.PaAny _loc, Ast.ExNil _loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "False")))))), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "List")), + (Ast.IdLid (_loc, "filter")))))), + (Ast.ExFun (_loc, + (Ast.McOr (_loc, + (Ast.McArr (_loc, p, + (Ast.ExId (_loc, (Ast.IdUid (_loc, "True")))), b)), + (Ast.McArr (_loc, (Ast.PaAny _loc), (Ast.ExNil _loc), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "False")))))))))))), l) let concat _loc l = Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdAcc (_loc, Ast.IdUid (_loc, "List"), - Ast.IdLid (_loc, "concat"))), + (Ast.ExId (_loc, + (Ast.IdAcc (_loc, (Ast.IdUid (_loc, "List")), + (Ast.IdLid (_loc, "concat")))))), l) let rec compr _loc e = @@ -14667,43 +14898,45 @@ module L = (None, [ (None, None, [ ([ Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top") ], (Gram.Action.mk (fun (e : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - e), - Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) : + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]"))))) : 'comprehension_or_sem_expr_for_list)))); ([ Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top"); Gram.Skeyword "|"; Gram.Slist1sep - (Gram.Snterm - (Gram.Entry.obj (item : 'item Gram.Entry.t)), - Gram.Skeyword ";") ], + ((Gram.Snterm + (Gram.Entry.obj (item : 'item Gram.Entry.t))), + (Gram.Skeyword ";")) ], (Gram.Action.mk (fun (l : 'item list) _ (e : 'expr) (_loc : Gram.Loc.t) -> (compr _loc e l : 'comprehension_or_sem_expr_for_list)))); ([ Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top"); Gram.Skeyword ";" ], (Gram.Action.mk (fun _ (e : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - e), - Ast.ExId (_loc, Ast.IdUid (_loc, "[]"))) : + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), + (Ast.ExId (_loc, (Ast.IdUid (_loc, "[]"))))) : 'comprehension_or_sem_expr_for_list)))); ([ Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top"); Gram.Skeyword ";"; Gram.Snterm @@ -14714,11 +14947,13 @@ module L = (fun (mk : 'sem_expr_for_list) _ (e : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, Ast.IdUid (_loc, "::")), - e), - mk - (Ast.ExId (_loc, Ast.IdUid (_loc, "[]")))) : + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), + (mk + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "[]")))))) : 'comprehension_or_sem_expr_for_list)))) ]) ])) ()); Gram.extend (item : 'item Gram.Entry.t) @@ -14728,7 +14963,7 @@ module L = [ ([ (* NP: These rules rely on being on this particular order. Which should be improved. *) Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top") ], (Gram.Action.mk (fun (e : 'expr) (_loc : Gram.Loc.t) -> @@ -14741,12 +14976,12 @@ module L = Gram.Skeyword "<-" ], (Gram.Action.mk (fun _ (p : 'patt) (_loc : Gram.Loc.t) - -> (p : 'e__29)))) ]); + -> (p : 'e__30)))) ]); Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top") ], (Gram.Action.mk - (fun (e : 'expr) (p : 'e__29) + (fun (e : 'expr) (p : 'e__30) (_loc : Gram.Loc.t) -> (`gen ((p, e)) : 'item)))) ]) ])) ())) @@ -14766,7 +15001,7 @@ module L = (None, [ (None, None, [ ([ Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top"); Gram.Skeyword "::"; Gram.Snterm @@ -14775,14 +15010,14 @@ module L = (fun (last : 'expr) _ (e : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "::")), - e), + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), last) : 'comprehension_or_sem_expr_for_list)))); ([ Gram.Snterml - (Gram.Entry.obj (expr : 'expr Gram.Entry.t), + ((Gram.Entry.obj (expr : 'expr Gram.Entry.t)), "top"); Gram.Skeyword ";"; Gram.Snterm @@ -14797,11 +15032,11 @@ module L = (mk : 'sem_expr_for_list) _ (e : 'expr) (_loc : Gram.Loc.t) -> (Ast.ExApp (_loc, - Ast.ExApp (_loc, - Ast.ExId (_loc, - Ast.IdUid (_loc, "::")), - e), - mk last) : + (Ast.ExApp (_loc, + (Ast.ExId (_loc, + (Ast.IdUid (_loc, "::")))), + e)), + (mk last)) : 'comprehension_or_sem_expr_for_list)))) ]) ])) ())) else () |