aboutsummaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authormsozeau2009-06-18 22:35:38 +0000
committermsozeau2009-06-18 22:35:38 +0000
commit0bb73a5c4b5264ed3c8a7243a818368083602e25 (patch)
tree200661003cbf438cda168442801da20229e35d6c /plugins
parent9346d0b22d34a48b16f46c663064808063afb4a2 (diff)
Use more consistent resolution parameters in Program and regular typing
and add an optional fail_evar flag to control resolution better in interpretation functions. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12197 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'plugins')
-rw-r--r--plugins/subtac/subtac_pretyping.ml1
-rw-r--r--plugins/subtac/subtac_pretyping_F.ml3
2 files changed, 3 insertions, 1 deletions
diff --git a/plugins/subtac/subtac_pretyping.ml b/plugins/subtac/subtac_pretyping.ml
index f16fa1c7a6..91418e05e7 100644
--- a/plugins/subtac/subtac_pretyping.ml
+++ b/plugins/subtac/subtac_pretyping.ml
@@ -74,6 +74,7 @@ let interp env isevars c tycon =
let evd,_ = consider_remaining_unif_problems env !isevars in
(* let unevd = undefined_evars evd in *)
let unevd' = Typeclasses.resolve_typeclasses ~onlyargs:true ~split:true ~fail:true env evd in
+ let unevd' = Typeclasses.resolve_typeclasses ~onlyargs:false ~split:true ~fail:false env unevd' in
let evm = unevd' in
isevars := unevd';
nf_evar evm j.uj_val, nf_evar evm j.uj_type
diff --git a/plugins/subtac/subtac_pretyping_F.ml b/plugins/subtac/subtac_pretyping_F.ml
index 23d8457327..8456d24a99 100644
--- a/plugins/subtac/subtac_pretyping_F.ml
+++ b/plugins/subtac/subtac_pretyping_F.ml
@@ -580,7 +580,8 @@ module SubtacPretyping_F (Coercion : Coercion.S) = struct
evdref := fst (consider_remaining_unif_problems env !evdref);
if resolve_classes then
evdref :=
- Typeclasses.resolve_typeclasses ~onlyargs:true ~fail:false env !evdref;
+ Typeclasses.resolve_typeclasses ~onlyargs:false
+ ~split:true ~fail:fail_evar env !evdref;
let c = nf_evar !evdref c' in
if fail_evar then check_evars env Evd.empty !evdref c;
c