aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpboutill2010-09-10 13:37:24 +0000
committerpboutill2010-09-10 13:37:24 +0000
commita80842f443b65d1bab4d9a4916017fc336f333fd (patch)
tree92a66bcd156389d05f1dee9c8140d3e0635d8235
parent97e46c18bb207726cfc42f25fc901772579d7057 (diff)
Bugfix: A notation for a constructor where some arguments are _
is now allowed on the left side of a match. You can write 'match v with |Vnil => 0 |h :: q => 1 end.' if 'h :: q' stands for the vector 'Vcons _ h _ t'. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@13403 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--interp/constrintern.ml1
1 files changed, 1 insertions, 0 deletions
diff --git a/interp/constrintern.ml b/interp/constrintern.ml
index 04fe942a15..8bb240d6e9 100644
--- a/interp/constrintern.ml
+++ b/interp/constrintern.ml
@@ -813,6 +813,7 @@ let subst_cases_pattern loc alias intern fullsubst scopes a =
match pl with PatCstr (loc, c, pl, Anonymous) -> (asubst, PatCstr (loc, c, pl, alias)) | _ -> x) v
with Not_found ->
anomaly "Inconsistent substitution of recursive notation")
+ | AHole _ -> ([],[[], PatVar (loc,Anonymous)])
| t -> error_invalid_pattern_notation loc
in aux alias fullsubst a