From 38241e3cad7f2b5b1e2ed18fd78ba7d18dcc4f67 Mon Sep 17 00:00:00 2001 From: herbelin Date: Tue, 29 Apr 2008 19:07:00 +0000 Subject: Ajout notation [ x ; ... ; y ] dans list_scope. Changement de la syntaxe interne de ring_lookup et field_lookup qui n'était pas assez robuste pour supporter une syntaxe [ ... ] dans constr. Déplacement de now_show de List.v vers Tactics.v, déplacement de "[ _ ]" au niveau 0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@10872 85f007b7-540e-0410-9357-904b9bb8a0f7 --- parsing/g_tactic.ml4 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'parsing/g_tactic.ml4') diff --git a/parsing/g_tactic.ml4 b/parsing/g_tactic.ml4 index 7803cd076..d59a46d12 100644 --- a/parsing/g_tactic.ml4 +++ b/parsing/g_tactic.ml4 @@ -244,6 +244,9 @@ GEXTEND Gram ExplicitBindings bl | bl = LIST1 constr -> ImplicitBindings bl ] ] ; + opt_bindings: + [ [ bl = bindings -> bl | -> NoBindings ] ] + ; constr_with_bindings: [ [ c = constr; l = with_bindings -> (c, l) ] ] ; @@ -527,10 +530,8 @@ GEXTEND Gram | IDENT "eright"; bl = with_bindings -> TacRight (true,bl) | IDENT "split"; bl = with_bindings -> TacSplit (false,false,bl) | IDENT "esplit"; bl = with_bindings -> TacSplit (true,false,bl) - | "exists"; bl = bindings -> TacSplit (false,true,bl) - | "eexists"; bl = bindings -> TacSplit (true,true,bl) - | "exists" (* meaningless? *) -> TacSplit (false,true,NoBindings) - | "eexists" -> TacSplit (true,true,NoBindings) + | "exists"; bl = opt_bindings -> TacSplit (false,true,bl) + | IDENT "eexists"; bl = opt_bindings -> TacSplit (true,true,bl) | IDENT "constructor"; n = num_or_meta; l = with_bindings -> TacConstructor (false,n,l) | IDENT "econstructor"; n = num_or_meta; l = with_bindings -> -- cgit v1.2.3