aboutsummaryrefslogtreecommitdiffhomepage
path: root/kernel/inductive.ml
diff options
context:
space:
mode:
authorGravatar Matthieu Sozeau <mattam@mattam.org>2015-10-12 15:39:20 +0200
committerGravatar Matthieu Sozeau <mattam@mattam.org>2015-10-12 15:39:20 +0200
commit50183ce7200d6059b4146c0cc4933aa524178c02 (patch)
treeef81d73765af835dc3c90bbb20b12b98f4a5bc17 /kernel/inductive.ml
parentb9a3925288af0cf3023c9a0073dc1eb295270de8 (diff)
Univs: be more restrictive for template polymorphic constants: only
direct aliases are ok, and indices should not be made polymorphic. Fixes NFix.
Diffstat (limited to 'kernel/inductive.ml')
-rw-r--r--kernel/inductive.ml5
1 files changed, 1 insertions, 4 deletions
diff --git a/kernel/inductive.ml b/kernel/inductive.ml
index a02d5e205..1f8706652 100644
--- a/kernel/inductive.ml
+++ b/kernel/inductive.ml
@@ -165,10 +165,7 @@ let rec make_subst env =
(* 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 (Lazy.force a))) in
- if Univ.Universe.is_levels s then
- make (cons_subst u s subst) (sign, exp, args)
- else (* Cannot handle substitution by i+n universes. *)
- make subst (sign, exp, args)
+ make (cons_subst u s subst) (sign, exp, args)
| (na,None,t)::sign, Some u::exp, [] ->
(* No more argument here: we add the remaining universes to the *)
(* substitution (when [u] is distinct from all other universes in the *)