aboutsummaryrefslogtreecommitdiff
path: root/kernel/inductive.ml
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/inductive.ml')
-rw-r--r--kernel/inductive.ml14
1 files changed, 5 insertions, 9 deletions
diff --git a/kernel/inductive.ml b/kernel/inductive.ml
index 05c5c0e821..848ae65c51 100644
--- a/kernel/inductive.ml
+++ b/kernel/inductive.ml
@@ -56,12 +56,7 @@ let inductive_paramdecls (mib,u) =
Vars.subst_instance_context u mib.mind_params_ctxt
let instantiate_inductive_constraints mib u =
- let process auctx = Univ.AUContext.instantiate u auctx in
- match mib.mind_universes with
- | Monomorphic_ind _ -> Univ.Constraint.empty
- | Polymorphic_ind auctx -> process auctx
- | Cumulative_ind cumi -> process (Univ.ACumulativityInfo.univ_context cumi)
-
+ Univ.AUContext.instantiate u (Declareops.inductive_polymorphic_context mib)
(************************************************************************)
@@ -804,7 +799,7 @@ let rec subterm_specif renv stack t =
| Not_subterm -> Not_subterm)
| Var _ | Sort _ | Cast _ | Prod _ | LetIn _ | App _ | Const _ | Ind _
- | Construct _ | CoFix _ -> Not_subterm
+ | Construct _ | CoFix _ | Int _ -> Not_subterm
(* Other terms are not subterms *)
@@ -1008,7 +1003,7 @@ let check_one_fix renv recpos trees def =
check_rec_call renv stack (Term.applist(c,l))
end
- | Sort _ ->
+ | Sort _ | Int _ ->
assert (List.is_empty l)
(* l is not checked because it is considered as the meta's context *)
@@ -1194,7 +1189,8 @@ let check_one_cofix env nbfix def deftype =
| Evar _ ->
List.iter (check_rec_call env alreadygrd n tree vlra) args
| Rel _ | Var _ | Sort _ | Cast _ | Prod _ | LetIn _ | App _ | Const _
- | Ind _ | Fix _ | Proj _ -> raise (CoFixGuardError (env,NotGuardedForm t)) in
+ | Ind _ | Fix _ | Proj _ | Int _ ->
+ raise (CoFixGuardError (env,NotGuardedForm t)) in
let ((mind, _),_) = codomain_is_coind env deftype in
let vlra = lookup_subterms env mind in