aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorherbelin2013-07-09 22:32:46 +0000
committerherbelin2013-07-09 22:32:46 +0000
commit92c45e641b0c8fda5fffb2cf543f886188fe772d (patch)
treecc795592d2dad643b1aac6008d1c78fbd84b3368
parentd135b02a31b0ec84b61726a3d0aa7301b08a48ad (diff)
Reorganizing intropatterns: * and ** are not naming intropatterns.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16620 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--parsing/g_tactic.ml415
1 files changed, 9 insertions, 6 deletions
diff --git a/parsing/g_tactic.ml4 b/parsing/g_tactic.ml4
index 5a5c07185c..5c0996c944 100644
--- a/parsing/g_tactic.ml4
+++ b/parsing/g_tactic.ml4
@@ -270,7 +270,7 @@ GEXTEND Gram
[ [ c = smart_global; nl = occs -> (nl,c) ] ]
;
intropatterns:
- [ [ l = LIST0 simple_intropattern -> l ]]
+ [ [ l = LIST0 nonsimple_intropattern -> l ]]
;
disjunctive_intropattern:
[ [ "["; tc = LIST1 intropatterns SEP "|"; "]" -> !@loc,IntroOrAndPattern tc
@@ -291,15 +291,18 @@ GEXTEND Gram
[ [ prefix = pattern_ident -> !@loc, IntroFresh prefix
| "?" -> !@loc, IntroAnonymous
| id = ident -> !@loc, IntroIdentifier id
+ | "_" -> !@loc, IntroWildcard
+ | "->" -> !@loc, IntroRewrite true
+ | "<-" -> !@loc, IntroRewrite false ] ]
+ ;
+ nonsimple_intropattern:
+ [ [ l = simple_intropattern -> l
| "*" -> !@loc, IntroForthcoming true
- | "**" -> !@loc, IntroForthcoming false ] ]
+ | "**" -> !@loc, IntroForthcoming false ]]
;
simple_intropattern:
[ [ pat = disjunctive_intropattern -> pat
- | pat = naming_intropattern -> pat
- | "_" -> !@loc, IntroWildcard
- | "->" -> !@loc, IntroRewrite true
- | "<-" -> !@loc, IntroRewrite false ] ]
+ | pat = naming_intropattern -> pat ] ]
;
simple_binding:
[ [ "("; id = ident; ":="; c = lconstr; ")" -> (!@loc, NamedHyp id, c)