aboutsummaryrefslogtreecommitdiffhomepage
path: root/test-suite
diff options
context:
space:
mode:
authorGravatar Matthieu Sozeau <mattam@mattam.org>2016-07-21 17:03:46 +0200
committerGravatar Matthieu Sozeau <mattam@mattam.org>2016-07-21 17:03:46 +0200
commitb9485da2388e0fe2d634d3359c0504b8c253e554 (patch)
treeaca0ca49a48ca9bbd033438ca5604e04a39f11b3 /test-suite
parenta341d13067a3de78e351e079938c46733109cae8 (diff)
Fix bug #4679, weakened setoid_rewrite unification
It should use evar instantiations eagerly during unification of the lhs of the lemma, as in 8.4.
Diffstat (limited to 'test-suite')
-rw-r--r--test-suite/bugs/closed/4679.v18
1 files changed, 18 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/4679.v b/test-suite/bugs/closed/4679.v
new file mode 100644
index 000000000..c94fa31a9
--- /dev/null
+++ b/test-suite/bugs/closed/4679.v
@@ -0,0 +1,18 @@
+Require Import Coq.Setoids.Setoid.
+Goal forall (T : nat -> Set -> Set) (U : Set)
+ (H : forall n : nat, T n (match n with
+ | 0 => fun x => x
+ | S _ => fun x => x
+ end (nat = nat)) = U),
+ T 0 (nat = nat) = U.
+Proof.
+ intros.
+ let H := match goal with H : forall _, eq _ _ |- _ => H end in
+ rewrite H || fail 0 "too early".
+ Undo.
+ let H := match goal with H : forall _, eq _ _ |- _ => H end in
+ setoid_rewrite (H 0) || fail 0 "too early".
+ Undo.
+ setoid_rewrite H. (* Error: Tactic failure: setoid rewrite failed: Nothing to rewrite. *)
+ reflexivity.
+Qed. \ No newline at end of file