diff options
author | herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2010-04-11 13:35:15 +0000 |
---|---|---|
committer | herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2010-04-11 13:35:15 +0000 |
commit | 99574cda788bb61599a73474d66050ffeb6db9d9 (patch) | |
tree | 0406f7d78db94db43cb27cca40675799610c6430 /test-suite/success | |
parent | ffa867c4b33c7b52e72ce005cd8183d8e51f310b (diff) |
Recovering 8.2 behavior of "simple (e)apply" (and hence of "(e)auto").
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12927 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'test-suite/success')
-rw-r--r-- | test-suite/success/apply.v | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test-suite/success/apply.v b/test-suite/success/apply.v index 10182bdc8..a6f9fa238 100644 --- a/test-suite/success/apply.v +++ b/test-suite/success/apply.v @@ -358,6 +358,32 @@ intro x; apply x. Qed. +(* The following worked in 8.2 but was not accepted from r12229 to + r12926 because "simple apply" started to use pattern unification of + evars. Evars pattern unification for simple (e)apply was disabled + in 12927 but "simple eapply" below worked from 12898 to 12926 + because pattern-unification also started supporting abstraction + over Metas. However it did not find the "simple" solution and hence + the subsequent "assumption" failed. *) + +Goal exists f:nat->nat, forall x y, x = y -> f x = f y. +intros; eexists; intros. +simple eapply (@f_equal nat). +assumption. +Existential 1 := fun x => x. +Qed. + +(* The following worked in 8.2 but was not accepted from r12229 to + r12897 for the same reason because eauto uses "simple apply". It + worked from 12898 to 12926 because eauto uses eassumption and not + assumption. *) + +Goal exists f:nat->nat, forall x y, x = y -> f x = f y. +intros; eexists; intros. +eauto. +Existential 1 := fun x => x. +Qed. + (* The following was accepted before r12612 but is still not accepted in r12658 Goal forall x : { x:nat | x = 0}, proj1_sig x = 0. |