aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/unification.ml
diff options
context:
space:
mode:
authorGravatar herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-02-05 16:47:04 +0000
committerGravatar herbelin <herbelin@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-02-05 16:47:04 +0000
commit8a590a18d267424809c9bbea5017e0d9e993c663 (patch)
tree25932bf35329b4da7da087d95bf28518a1ae5b58 /pretyping/unification.ml
parentfb982f3d9fd7610c02ca69cad4d9c59ac26a931b (diff)
Revert "Ordered evars by level of dependency in the merging phase of unification"
Though this commit provides with more "natural" instances of metas found by unification, it breaks a few contribs. The best approach to try is maybe now to instead plug apply on evarconv.ml, rather than on unification.ml! git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16191 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/unification.ml')
-rw-r--r--pretyping/unification.ml10
1 files changed, 1 insertions, 9 deletions
diff --git a/pretyping/unification.ml b/pretyping/unification.ml
index 3a67a13ab..d5fee4595 100644
--- a/pretyping/unification.ml
+++ b/pretyping/unification.ml
@@ -827,14 +827,6 @@ let order_metas metas =
meta :: order latemetas metas
in order [] metas
-(* Give priority to the less-dependent evars so that instances found
- by matching are preferred over instances found by unification of
- types of other instances; this gives instances more faithful to
- what the user sees *)
-
-let order_evars evars =
- Sort.list (fun (env1,(evk1,_),rhs1) (env2,(evk2,_),rhs2) -> evk1 < evk2) evars
-
(* Solve an equation ?n[x1=u1..xn=un] = t where ?n is an evar *)
let solve_simple_evar_eqn ts env evd ev rhs =
@@ -943,7 +935,7 @@ let w_merge env with_types flags (evd,metas,evars) =
else Evd.define sp (Evarutil.nf_evar evd''' c) evd''' in
(* merge constraints *)
- w_merge_rec evd (order_metas metas) (order_evars evars) []
+ w_merge_rec evd (order_metas metas) evars []
let w_unify_meta_types env ?(flags=default_unify_flags) evd =
let metas,evd = retract_coercible_metas evd in