diff options
| author | herbelin | 2000-08-20 19:31:01 +0000 |
|---|---|---|
| committer | herbelin | 2000-08-20 19:31:01 +0000 |
| commit | f473b2b79aa51307a4103660327dcb151bdaadad (patch) | |
| tree | d3a2d4cd1f735e4d24621dbb5a19650cf3fcd412 | |
| parent | c85ee5577d9ee20a9a91c338ece3c1c0685874b7 (diff) | |
Bug dans le filtrage des paires, nettoyage
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@580 85f007b7-540e-0410-9357-904b9bb8a0f7
| -rw-r--r-- | parsing/g_cases.ml4 | 37 |
1 files changed, 8 insertions, 29 deletions
diff --git a/parsing/g_cases.ml4 b/parsing/g_cases.ml4 index 65248524e5..5067b2aac4 100644 --- a/parsing/g_cases.ml4 +++ b/parsing/g_cases.ml4 @@ -7,39 +7,18 @@ open Constr GEXTEND Gram GLOBAL : constr1 pattern; -(* - pattern_list: - [ [ -> [] - | p = pattern; pl = pattern_list -> p :: pl ] ] - ; - lsimple_pattern: - [ [ c = simple_pattern2 -> c ] ] - ; -*) pattern: [ [ id = ident -> id - | "("; p = lsimple_pattern; ")" -> p ] ] - ; -(* - simple_pattern_list: - [ [ -> [] - | p = simple_pattern; pl = simple_pattern_list -> - p :: pl ] ] + | "("; p = compound_pattern; ")" -> p ] ] ; -*) - lsimple_pattern: - [ [ id = ident; lp = ne_pattern_list -> - <:ast< (PATTCONSTRUCT $id ($LIST $lp)) >> - | p = lsimple_pattern; "as"; id = ident -> <:ast< (PATTAS $id $p)>> - | c1 = lsimple_pattern; ","; c2 = lsimple_pattern -> - <:ast< (PATTCONSTRUCT pair $c1 $c2) >> - | "("; p = lsimple_pattern; ")" -> p ] ] - ; -(* - pattern: - [ [ p = simple_pattern -> p ] ] + compound_pattern: + [ [ p = pattern ; lp = ne_pattern_list -> + <:ast< (PATTCONSTRUCT $p ($LIST $lp)) >> + | p = pattern; "as"; id = ident -> + <:ast< (PATTAS $id $p)>> + | p1 = pattern; ","; p2 = pattern -> + <:ast< (PATTCONSTRUCT pair $p1 $p2) >> ] ] ; -*) ne_pattern_list: [ [ c1 = pattern; cl = ne_pattern_list -> c1 :: cl | c1 = pattern -> [c1] ] ] |
