aboutsummaryrefslogtreecommitdiff
path: root/kernel/indtypes.ml
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/indtypes.ml')
-rw-r--r--kernel/indtypes.ml6
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/indtypes.ml b/kernel/indtypes.ml
index 45e0261d3c..afd7cde979 100644
--- a/kernel/indtypes.ml
+++ b/kernel/indtypes.ml
@@ -299,8 +299,8 @@ let typecheck_inductive env ctx mie =
let full_polymorphic () =
let defu = Term.univ_of_sort def_level in
let is_natural =
- check_leq (universes env') infu defu &&
- not (is_type0m_univ defu && not is_unit)
+ type_in_type env || (check_leq (universes env') infu defu &&
+ not (is_type0m_univ defu && not is_unit))
in
let _ =
(** Impredicative sort, always allow *)
@@ -326,7 +326,7 @@ let typecheck_inductive env ctx mie =
(* conclusions of the parameters *)
(* We enforce [u >= lev] in case [lev] has a strict upper *)
(* constraints over [u] *)
- let b = check_leq (universes env') infu u in
+ let b = type_in_type env || check_leq (universes env') infu u in
if not b then
anomaly ~label:"check_inductive"
(Pp.str"Incorrect universe " ++