aboutsummaryrefslogtreecommitdiffhomepage
path: root/checker/inductive.ml
diff options
context:
space:
mode:
authorGravatar Matthieu Sozeau <matthieu.sozeau@inria.fr>2015-07-08 12:44:59 +0200
committerGravatar Matthieu Sozeau <matthieu.sozeau@inria.fr>2015-07-08 17:04:49 +0200
commitc71cff0328fa0ee640f35337278f344e0d00698a (patch)
treebec6e097a4a3733e877a3bed94e7bb3ad6746d41 /checker/inductive.ml
parent32dc4dc94c5677bc686a16a4a047f1750d0d8582 (diff)
Checker: Report bugfixes from kernel/inductive.ml
Wrong handling of mind_params_ctxt...
Diffstat (limited to 'checker/inductive.ml')
-rw-r--r--checker/inductive.ml12
1 files changed, 7 insertions, 5 deletions
diff --git a/checker/inductive.ml b/checker/inductive.ml
index 59d1a645a..1c8f570df 100644
--- a/checker/inductive.ml
+++ b/checker/inductive.ml
@@ -104,12 +104,14 @@ let instantiate_params full t u args sign =
let full_inductive_instantiate mib u params sign =
let dummy = Prop Null in
let t = mkArity (sign,dummy) in
- fst (destArity (instantiate_params true t u params mib.mind_params_ctxt))
+ let ar = fst (destArity (instantiate_params true t u params mib.mind_params_ctxt)) in
+ subst_instance_context u ar
-let full_constructor_instantiate ((mind,_),u,(mib,_),params) =
- let inst_ind = constructor_instantiate mind u mib in
- (fun t ->
- instantiate_params true (inst_ind t) u params mib.mind_params_ctxt)
+
+let full_constructor_instantiate ((mind,_),u,(mib,_),params) t =
+ let inst_ind = constructor_instantiate mind u mib t in
+ instantiate_params true inst_ind u params
+ (subst_instance_context u mib.mind_params_ctxt)
(************************************************************************)
(************************************************************************)