aboutsummaryrefslogtreecommitdiff
path: root/pretyping/typeclasses.ml
diff options
context:
space:
mode:
authormsozeau2009-11-15 20:24:19 +0000
committermsozeau2009-11-15 20:24:19 +0000
commit9a5c74b8229f90b2ac1df5c41f7857cc1b0bf067 (patch)
tree9709edf60a7675a7d1c90a1c9fef4acd71efa57e /pretyping/typeclasses.ml
parent566e21af6792406715e79df5c61a3cc715b15c66 (diff)
Fix type class discharge again.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12526 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/typeclasses.ml')
-rw-r--r--pretyping/typeclasses.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/pretyping/typeclasses.ml b/pretyping/typeclasses.ml
index 1b8c5a2331..96e36b70ba 100644
--- a/pretyping/typeclasses.ml
+++ b/pretyping/typeclasses.ml
@@ -139,12 +139,13 @@ let discharge_class (_,cl) =
(decl :: ctx', n :: subst)
) ctx ([], []) in
let discharge_rel_context subst n rel =
+ let rel = map_rel_context (Cooking.expmod_constr repl) rel in
let ctx, _ =
List.fold_right
(fun (id, b, t) (ctx, k) ->
(id, Option.smartmap (substn_vars k subst) b, substn_vars k subst t) :: ctx, succ k)
rel ([], n)
- in map_rel_context (Cooking.expmod_constr repl) ctx
+ in ctx
in
let abs_context cl =
match cl.cl_impl with