aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormsozeau2009-01-21 15:16:55 +0000
committermsozeau2009-01-21 15:16:55 +0000
commit74ce8587a0195d18af52335963e0478b0acf2122 (patch)
treef0ceb2bba53b77768911e8e64ad7d559924bcf7b
parent0deeb743b6b90b7be64d150c142ed5ef77d77943 (diff)
Fix bug #2004 due to bad handling of evars in the unification for
the setoid_rewrite variant called by rewrite (bug traced by Hugo). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11822 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--tactics/class_tactics.ml45
1 files changed, 3 insertions, 2 deletions
diff --git a/tactics/class_tactics.ml4 b/tactics/class_tactics.ml4
index 6d01ea00c9..4eb20cb53e 100644
--- a/tactics/class_tactics.ml4
+++ b/tactics/class_tactics.ml4
@@ -1585,8 +1585,9 @@ let unification_rewrite l2r c1 c2 cl car rel but gl =
let cl' = { cl' with templval = mk_freelisted prf ; templtyp = mk_freelisted prfty } in
{cl=cl'; prf=(mkRel 1); car=car; rel=rel; l2r=l2r; c1=c1; c2=c2; c=None; abs=Some (prf, prfty)}
-let get_hyp gl c clause l2r =
- let hi = decompose_setoid_eqhyp (pf_env gl) (fst c) (snd c) l2r in
+let get_hyp gl (evm,c) clause l2r =
+ let evars = Evd.merge (project gl) evm in
+ let hi = decompose_setoid_eqhyp (pf_env gl) evars c l2r in
let but = match clause with Some id -> pf_get_hyp_typ gl id | None -> pf_concl gl in
unification_rewrite hi.l2r hi.c1 hi.c2 hi.cl hi.car hi.rel but gl