diff options
Diffstat (limited to 'kernel/inductive.ml')
| -rw-r--r-- | kernel/inductive.ml | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/inductive.ml b/kernel/inductive.ml index 10e6569ca0..93d0d96b20 100644 --- a/kernel/inductive.ml +++ b/kernel/inductive.ml @@ -153,9 +153,10 @@ let rec make_subst env = function (* arity is a global level which, at typing time, will be enforce *) (* to be greater than the level of the argument; this is probably *) (* a useless extra constraint *) - let s = sort_as_univ (snd (dest_arity env a)) in + let _,ars = dest_arity env a in + let s = sort_as_univ ars in let ctx,subst = make_subst env (sign, exp, args) in - let t = actualize_decl_level env (Type s) t in + let t = actualize_decl_level env ars t in (na,None,t)::ctx, cons_subst u s subst | (na,None,t as d)::sign, Some u::exp, [] -> (* No more argument here: we instantiate the type with a fresh level *) |
