diff options
author | Jacques Garrigue <garrigue at math.nagoya-u.ac.jp> | 2011-12-14 08:59:07 +0000 |
---|---|---|
committer | Jacques Garrigue <garrigue at math.nagoya-u.ac.jp> | 2011-12-14 08:59:07 +0000 |
commit | 01dceea3cc22f39706998ea0d0712290f0b1a86a (patch) | |
tree | 86227235af197b8d7a424dc0fdaa2f590c842fd9 | |
parent | e461027b89fc78fe17ab61e7f4e9f593a7890a95 (diff) |
remove conflict
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11309 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r-- | parsing/parser.mly | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/parsing/parser.mly b/parsing/parser.mly index 18995b165..7ac680432 100644 --- a/parsing/parser.mly +++ b/parsing/parser.mly @@ -47,6 +47,9 @@ let reloc_exp x = { x with pexp_loc = symbol_rloc () };; let mkoperator name pos = { pexp_desc = Pexp_ident(Lident name); pexp_loc = rhs_loc pos } +let mkpatvar name pos = + { ppat_desc = Ppat_var name; ppat_loc = rhs_loc pos } + (* Ghost expressions and patterns: expressions and patterns that do not appear explicitely in the @@ -1189,17 +1192,14 @@ lident_list: LIDENT { [$1] } | LIDENT lident_list { $1 :: $2 } ; -pat_ident: - val_ident { mkpat (Ppat_var $1) } -; let_binding: - pat_ident fun_binding - { ($1, $2) } - | pat_ident COLON typevar_list DOT core_type EQUAL seq_expr - { (ghpat(Ppat_constraint($1, ghtyp(Ptyp_poly($3,$5)))), $7) } - | pat_ident COLON TYPE lident_list DOT core_type EQUAL seq_expr + val_ident fun_binding + { (mkpatvar $1 1, $2) } + | val_ident COLON typevar_list DOT core_type EQUAL seq_expr + { (ghpat(Ppat_constraint(mkpatvar $1 1, ghtyp(Ptyp_poly($3,$5)))), $7) } + | val_ident COLON TYPE lident_list DOT core_type EQUAL seq_expr { let exp, poly = wrap_type_annotation $4 $6 $8 in - (ghpat(Ppat_constraint($1, poly)), exp) } + (ghpat(Ppat_constraint(mkpatvar $1 1, poly)), exp) } | pattern EQUAL seq_expr { ($1, $3) } ; |