]> matita.cs.unibo.it Git - helm.git/commitdiff
This is only a temporary patch. The typecheker raises a
authorAndrea Asperti <andrea.asperti@unibo.it>
Fri, 20 Oct 2006 14:50:40 +0000 (14:50 +0000)
committerAndrea Asperti <andrea.asperti@unibo.it>
Fri, 20 Oct 2006 14:50:40 +0000 (14:50 +0000)
CicUniv.UniverseInconsistency that should be properly
captured and transformed into a tyepchecking error.

components/tactics/primitiveTactics.ml

index 16cff94d7796493f52a05658332a8261f564be4f..b016eb85f6141cc7445bb75dcdcc306d5657c4c3 100644 (file)
@@ -298,7 +298,8 @@ let apply_with_subst ~term ~subst ~maxmeta (proof, goal) =
      try
       new_metasenv_and_unify_and_t newmeta' metasenv' context term' ty
         termty n
-     with CicUnification.UnificationFailure _ when n > 0 ->
+     with (CicUnification.UnificationFailure _ 
+     | CicUniv.UniverseInconsistency _ ) when n > 0 ->
       add_one_argument (n - 1)
     in
      add_one_argument goal_arity
@@ -335,8 +336,8 @@ let apply_with_subst ~term ?(subst=[]) ?(maxmeta=0) status =
       (* TODO cacciare anche altre eccezioni? *)
   with 
   | CicUnification.UnificationFailure msg
-  | CicTypeChecker.TypeCheckerFailure msg ->
-      raise (Fail msg)
+  | CicTypeChecker.TypeCheckerFailure msg -> raise (Fail msg)
+  | CicUniv.UniverseInconsistency msg  -> raise (Fail (lazy msg))
 
 (* ALB *)
 let apply_tac_verbose ~term status =