diff options
author | 2004-09-03 17:14:02 +0000 | |
---|---|---|
committer | 2004-09-03 17:14:02 +0000 | |
commit | 85fb5f33b1cac28e1fe4f00741c66f6f58109f84 (patch) | |
tree | 4913998a925cb148c74a607bf7523ae1d28853ce /pretyping/pretype_errors.ml | |
parent | 31ebb89fe48efe92786b1cddc3ba62e7dfc4e739 (diff) |
premiere reorganisation de l\'unification
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@6057 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/pretype_errors.ml')
-rw-r--r-- | pretyping/pretype_errors.ml | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/pretyping/pretype_errors.ml b/pretyping/pretype_errors.ml index 07d72c89e..d7407c5d1 100644 --- a/pretyping/pretype_errors.ml +++ b/pretyping/pretype_errors.ml @@ -26,6 +26,9 @@ type pretype_error = | OccurCheck of existential_key * constr | NotClean of existential_key * constr * hole_kind | UnsolvableImplicit of hole_kind + | CannotUnify of constr * constr + | CannotGeneralize of constr + | NoOccurrenceFound of constr (* Pretyping *) | VarNotFound of identifier | UnexpectedType of constr * constr @@ -33,6 +36,12 @@ type pretype_error = exception PretypeError of env * pretype_error +let precatchable_exception = function + | Util.UserError _ | TypeError _ | PretypeError _ + | Stdpp.Exc_located(_,(Util.UserError _ | TypeError _ | + Nametab.GlobalizationError _ | PretypeError _)) -> true + | _ -> false + let nf_evar = Reductionops.nf_evar let j_nf_evar sigma j = { uj_val = nf_evar sigma j.uj_val; @@ -141,6 +150,9 @@ let error_not_clean env sigma ev c (loc,k) = let error_unsolvable_implicit loc env sigma e = raise_with_loc loc (PretypeError (env_ise sigma env, UnsolvableImplicit e)) +let error_cannot_unify env sigma (m,n) = + raise (PretypeError (env_ise sigma env,CannotUnify (m,n))) + (*s Ml Case errors *) let error_cant_find_case_type_loc loc env sigma expr = |