Type_errorsType errors. \label{typeerrors}
type 'constr pfix_guard_error = | NotEnoughAbstractionInFixBody of int| RecursionNotOnInductiveType of 'constr| RecursionOnIllegalTerm of int
* Environ.env * 'constr
* (int list * int list) Stdlib.Lazy.t| NotEnoughArgumentsForFixCall of int| FixpointOnNonEliminable of Sorts.t * Sorts.ttype 'constr pcofix_guard_error = | CodomainNotInductiveType of 'constr| NestedRecursiveOccurrences| UnguardedRecursiveCall of 'constr| RecCallInTypeOfAbstraction of 'constr| RecCallInNonRecArgOfConstructor of 'constr| RecCallInTypeOfDef of 'constr| RecCallInCaseFun of 'constr| RecCallInCaseArg of 'constr| RecCallInCasePred of 'constr| NotGuardedForm of 'constr| ReturnPredicateNotCoInductive of 'constrtype 'constr pguard_error = | FixGuardError of 'constr pfix_guard_error| CoFixGuardError of 'constr pcofix_guard_errortype fix_guard_error = Constr.constr pfix_guard_errortype cofix_guard_error = Constr.constr pcofix_guard_errortype guard_error = Constr.constr pguard_errortype ('constr, 'types) pcant_apply_bad_type =
(int * 'constr * 'constr)
* ('constr, 'types) Environ.punsafe_judgment
* ('constr, 'types) Environ.punsafe_judgment arraytype ('constr, 'types, 'r) ptype_error = | UnboundRel of int| UnboundVar of Names.variable| NotAType of ('constr, 'types) Environ.punsafe_judgment| BadAssumption of ('constr, 'types) Environ.punsafe_judgment| ReferenceVariables of Names.Id.t * Names.GlobRef.t| ElimArity of Constr.pinductive * 'constr * Sorts.t option| CaseNotInductive of ('constr, 'types) Environ.punsafe_judgment| CaseOnPrivateInd of Names.inductive| WrongCaseInfo of Constr.pinductive * Constr.case_info| NumberBranches of ('constr, 'types) Environ.punsafe_judgment * int| IllFormedCaseParams| IllFormedBranch of 'constr * Constr.pconstructor * 'constr * 'constr| BadProjType of ('constr, 'types) Environ.punsafe_judgment * Names.Projection.t| Generalization of Names.Name.t * 'types
* ('constr, 'types) Environ.punsafe_judgment| ActualType of ('constr, 'types) Environ.punsafe_judgment * 'types| IncorrectPrimitive of (CPrimitives.op_or_type, 'types) Environ.punsafe_judgment
* 'types| CantApplyBadType of ('constr, 'types) pcant_apply_bad_type| CantApplyNonFunctional of ('constr, 'types) Environ.punsafe_judgment
* ('constr, 'types) Environ.punsafe_judgment array| IllFormedRecBody of 'constr pguard_error
* (Names.Name.t, 'r) Context.pbinder_annot array
* int
* Environ.env
* ('constr, 'types) Environ.punsafe_judgment array| IllTypedRecBody of int
* (Names.Name.t, 'r) Context.pbinder_annot array
* ('constr, 'types) Environ.punsafe_judgment array
* 'types array| UnsatisfiedUnivConstraints of Univ.UnivConstraints.t| UnsatisfiedPConstraints of PConstraints.t| UndeclaredQualities of Sorts.Quality.Set.t| UndeclaredUniverses of Univ.Level.Set.t| NotAllowedSProp| BadBinderRelevance of 'r * ('constr, 'types, 'r) Context.Rel.Declaration.pt| BadCaseRelevance of 'r * 'constr| BadInvert| BadVariance of {lev : Univ.Level.t;expected : UVars.Variance.t;actual : UVars.Variance.t;}| UndeclaredUsedVariables of {declared_vars : Names.Id.Set.t;inferred_vars : Names.Id.Set.t;}| IllFormedConstant of Names.Constant.t * Names.KerName.t| IllFormedInductive of Names.MutInd.t * Names.KerName.ttype type_error = (Constr.constr, Constr.types, Sorts.relevance) ptype_errorexception TypeError of Environ.env * type_errortype inductive_error = | NonPos of Constr.constr * Constr.constr| NotEnoughArgs of Constr.constr * Constr.constr| NotConstructor of Names.Id.t * Constr.constr * Constr.constr * int * int| NonPar of Constr.constr * int * Constr.constr * Constr.constr| SameNamesTypes of Names.Id.t| SameNamesConstructors of Names.Id.t| SameNamesOverlap of Names.Id.t list| NotAnArity of Constr.constr| BadEntry| LargeNonPropInductiveNotInType| MissingUnivConstraints of Sorts.t list * Sorts.tThe different kinds of errors that may result of a malformed inductive definition.
exception InductiveError of Environ.env * inductive_errorRaising functions
val error_unbound_rel : Environ.env -> int -> 'aval error_unbound_var : Environ.env -> Names.variable -> 'aval error_not_type : Environ.env -> Environ.unsafe_judgment -> 'aval error_assumption : Environ.env -> Environ.unsafe_judgment -> 'aval error_reference_variables :
Environ.env ->
Names.Id.t ->
Names.GlobRef.t ->
'aval error_elim_arity :
Environ.env ->
Constr.pinductive ->
Constr.constr ->
Sorts.t option ->
'aval error_case_not_inductive : Environ.env -> Environ.unsafe_judgment -> 'aval error_case_on_private_ind : Environ.env -> Names.inductive -> 'aval error_number_branches : Environ.env -> Environ.unsafe_judgment -> int -> 'aval error_ill_formed_branch :
Environ.env ->
Constr.constr ->
Constr.pconstructor ->
Constr.constr ->
Constr.constr ->
'aval error_generalization :
Environ.env ->
(Names.Name.t * Constr.types) ->
Environ.unsafe_judgment ->
'aval error_bad_proj_type :
Environ.env ->
Environ.unsafe_judgment ->
Names.Projection.t ->
'aval error_actual_type :
Environ.env ->
Environ.unsafe_judgment ->
Constr.types ->
'aval error_incorrect_primitive :
Environ.env ->
(CPrimitives.op_or_type, Constr.types) Environ.punsafe_judgment ->
Constr.types ->
'aval error_cant_apply_not_functional :
Environ.env ->
Environ.unsafe_judgment ->
Environ.unsafe_judgment array ->
'aval error_cant_apply_bad_type :
Environ.env ->
(int * Constr.constr * Constr.constr) ->
Environ.unsafe_judgment ->
Environ.unsafe_judgment array ->
'aval error_ill_formed_rec_body :
Environ.env ->
guard_error ->
Names.Name.t Constr.binder_annot array ->
int ->
Environ.env ->
Environ.unsafe_judgment array ->
'aval error_ill_typed_rec_body :
Environ.env ->
int ->
Names.Name.t Constr.binder_annot array ->
Environ.unsafe_judgment array ->
Constr.types array ->
'aval error_unsatisfied_univ_constraints :
Environ.env ->
Univ.UnivConstraints.t ->
'aval error_unsatisfied_poly_constraints : Environ.env -> PConstraints.t -> 'aval error_undeclared_qualities : Environ.env -> Sorts.Quality.Set.t -> 'aval error_undeclared_universes : Environ.env -> Univ.Level.Set.t -> 'aval error_not_allowed_sprop : Environ.env -> 'aval error_bad_binder_relevance :
Environ.env ->
Sorts.relevance ->
Constr.rel_declaration ->
'aval error_bad_case_relevance :
Environ.env ->
Sorts.relevance ->
Constr.case ->
'aval error_bad_invert : Environ.env -> 'aval error_bad_variance :
Environ.env ->
lev:Univ.Level.t ->
expected:UVars.Variance.t ->
actual:UVars.Variance.t ->
'aval error_undeclared_used_variables :
Environ.env ->
declared_vars:Names.Id.Set.t ->
inferred_vars:Names.Id.Set.t ->
'aval error_ill_formed_constant :
Environ.env ->
Names.Constant.t ->
Names.KerName.t ->
'aval error_ill_formed_inductive :
Environ.env ->
Names.MutInd.t ->
Names.KerName.t ->
'aval map_pguard_error : ('c -> 'd) -> 'c pguard_error -> 'd pguard_errorval map_ptype_error :
('r1 -> 'r2) ->
('c -> 'd) ->
('c, 'c, 'r1) ptype_error ->
('d, 'd, 'r2) ptype_error