aboutsummaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authormsozeau2012-01-23 20:51:29 +0000
committermsozeau2012-01-23 20:51:29 +0000
commit0a2d03537beaf5ba2ca07176cccba6ce6c6532b2 (patch)
treef6be0ce6a2164170ae97853df6ca5dd8386239bb /plugins
parenta9521af9d808e345917dd06445362427665a5846 (diff)
Fix for Program Instance not separately checking the resolution of evars of the type (mandatory) and the fields (optional)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@14940 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'plugins')
-rw-r--r--plugins/subtac/subtac_cases.ml2
-rw-r--r--plugins/subtac/subtac_classes.ml2
2 files changed, 2 insertions, 2 deletions
diff --git a/plugins/subtac/subtac_cases.ml b/plugins/subtac/subtac_cases.ml
index 368d8bac30..16d4e21ee5 100644
--- a/plugins/subtac/subtac_cases.ml
+++ b/plugins/subtac/subtac_cases.ml
@@ -1845,7 +1845,7 @@ let build_dependent_signature env evars avoid tomatchs arsign =
refl_arg :: refl_args,
pred slift,
(Name id, b, t) :: argsign'))
- (env, 0, [], [], slift, []) args argsign
+ (env, neqs, [], [], slift, []) args argsign
in
let eq = mk_JMeq
(lift (nargeqs + slift) appt)
diff --git a/plugins/subtac/subtac_classes.ml b/plugins/subtac/subtac_classes.ml
index c08dd16df5..4b53a20385 100644
--- a/plugins/subtac/subtac_classes.ml
+++ b/plugins/subtac/subtac_classes.ml
@@ -108,7 +108,7 @@ let new_instance ?(global=false) ctx (instid, bk, cl) props ?(generalize=true) p
Namegen.next_global_ident_away i (Termops.ids_of_context env)
in
let env' = push_rel_context ctx env in
- evars := Evarutil.nf_evar_map !evars;
+ evars := Typeclasses.mark_resolvables (Evarutil.nf_evar_map !evars);
evars := resolve_typeclasses ~onlyargs:false ~fail:true env !evars;
let sigma = !evars in
let subst = List.map (Evarutil.nf_evar sigma) subst in