diff options
author | 2010-06-13 14:23:55 +0000 | |
---|---|---|
committer | 2010-06-13 14:23:55 +0000 | |
commit | ec8ccca2045e103e69664e29db19e92dbf82a1b7 (patch) | |
tree | 6e4e2b80fadab15e363947db8a4d0f813f53cac7 /test-suite | |
parent | 02f89d9e8598c03b2e9ab940f8f7b6ca333bd818 (diff) |
Addressed bug #2320 in v8.2 and v8.3 branches ("refine" problem with
metas in return predicate of "match"); propagated protection for #2310
("refine" problem with dependent metas of higher-order type) in v8.3
to v8.2. Everything goes well in trunk thanks for the new proof engine.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@13129 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'test-suite')
-rw-r--r-- | test-suite/bugs/closed/shouldsucceed/2320.v | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/shouldsucceed/2320.v b/test-suite/bugs/closed/shouldsucceed/2320.v new file mode 100644 index 000000000..facb9ecfc --- /dev/null +++ b/test-suite/bugs/closed/shouldsucceed/2320.v @@ -0,0 +1,14 @@ +(* Managing metavariables in the return clause of a match *) + +(* This was working in 8.1 but is failing in 8.2 and 8.3. It works in + trunk thanks to the new proof engine. It could probably made to work in + 8.2 and 8.3 if a return predicate of the form "dummy 0" instead of + (or in addition to) a sophisticated predicate of the form + "as x in dummy y return match y with 0 => ?P | _ => ID end" *) + +Inductive dummy : nat -> Prop := constr : dummy 0. + +Lemma failure : forall (x : dummy 0), x = constr. +Proof. +intros x. +refine (match x with constr => _ end). |