aboutsummaryrefslogtreecommitdiff
path: root/kernel/indtypes.ml
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/indtypes.ml')
-rw-r--r--kernel/indtypes.ml3
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/indtypes.ml b/kernel/indtypes.ml
index 5237b93db7..83928b6cca 100644
--- a/kernel/indtypes.ml
+++ b/kernel/indtypes.ml
@@ -534,6 +534,8 @@ let build_inductive env env_ar params record finite inds nmr recargs cst =
let nf_lc =
array_map2 (fun (d,b) c -> it_mkProd_or_LetIn b d) splayed_lc lc in
let nf_lc = if nf_lc = lc then lc else nf_lc in
+ let consnrealargs =
+ Array.map (fun (d,b) -> List.length d - nparamargs) splayed_lc in
(* Elimination sorts *)
let isunit = isunit && ntypes = 1 && (not (is_recursive recargs.(0))) in
let kelim = allowed_sorts env issmall isunit ar_sort in
@@ -558,6 +560,7 @@ let build_inductive env env_ar params record finite inds nmr recargs cst =
mind_sort = ar_sort;
mind_kelim = kelim;
mind_consnames = Array.of_list cnames;
+ mind_consnrealargs = consnrealargs;
mind_user_lc = lc;
mind_nf_lc = nf_lc;
mind_recargs = recarg;