]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/matitaExcPp.ml
Disambiguation errors are no longer thrown away. They are now collected
[helm.git] / helm / matita / matitaExcPp.ml
index fce5cf6d991bea50ffc5fb8a41c1d7aad703a115..a5a2f4d86a73a44772addd8852296e77aab03741 100644 (file)
@@ -49,5 +49,22 @@ let to_string =
         (".moo file '%s' has been compiled by a different version of matita, "
         ^^ "please recompile it")
         fname
+  | ProofEngineTypes.Fail msg -> "Tactic error: " ^ Lazy.force msg
+  | Continuationals.Error s -> "Tactical error: " ^ Lazy.force s
+  | CicTypeChecker.TypeCheckerFailure msg ->
+     "Type checking error: " ^ Lazy.force msg
+  | CicTypeChecker.AssertFailure msg ->
+     "Type checking assertion failed: " ^ Lazy.force msg
+  | MatitaDisambiguator.DisambiguationError errorll ->
+     let rec aux n =
+      function
+         [] -> ""
+       | phase::tl ->
+          aux (n+1) tl ^
+           "Errors obtained during phase " ^ string_of_int n ^":\n" ^
+            String.concat "\n" (List.map Lazy.force phase) ^ "\n" ^ "\n"
+     in
+      "DISAMBIGUATION ERROR:\n" ^
+       aux 1 errorll
   | exn -> "Uncaught exception: " ^ Printexc.to_string exn