aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorherbelin2002-06-19 10:43:49 +0000
committerherbelin2002-06-19 10:43:49 +0000
commit034bbfbfe46fd8e020a74ea77f35cfaefed44a9e (patch)
treed795a3acb2a0bf70c5a21d000af1a1164d7e851a
parent0736d7a0c67bdc77efa4178c0ebc41b817c1217e (diff)
Coercion de la syntaxe des motifs non atomiques
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@2794 85f007b7-540e-0410-9357-904b9bb8a0f7
-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: