aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--parsing/g_cases.ml46
1 files changed, 5 insertions, 1 deletions
diff --git a/parsing/g_cases.ml4 b/parsing/g_cases.ml4
index 66536703a6..1ba2c6f233 100644
--- a/parsing/g_cases.ml4
+++ b/parsing/g_cases.ml4
@@ -22,11 +22,15 @@ GEXTEND Gram
;
compound_pattern:
[ [ p = pattern ; lp = ne_pattern_list ->
+ (match p with
+ | Coqast.Node(_,"QUALID",_) -> ()
+ | _ -> Util.user_err_loc
+ (loc, "compound_pattern", Pp.str "Constructor expected"));
<:ast< (PATTCONSTRUCT $p ($LIST $lp)) >>
| p = pattern; "as"; id = Prim.var ->
<:ast< (PATTAS $id $p)>>
| p1 = pattern; ","; p2 = pattern ->
- <:ast< (PATTCONSTRUCT Coq.Init.Datatypes.pair $p1 $p2) >>
+ <:ast< (PATTCONSTRUCT Coq.Init.Datatypes.pair $p1 $p2) >>
| p = pattern -> p ] ]
;
ne_pattern_list: