]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/matitacLib.ml
more work
[helm.git] / helm / software / matita / matitacLib.ml
index e5a8efe8ff31b2407d3b5cace81b1aebf3e8ce73..7790f75683d252920326d88477f9825e6208957d 100644 (file)
@@ -248,24 +248,22 @@ let compile options fname =
      LexiconSync.time_travel 
        ~present:lexicon_status ~past:initial_lexicon_status;
      clean_exit baseuri false
-  | MatitaEngine.EnrichedWithLexiconStatus (exn, lex_stat) ->
+  | MatitaEngine.EnrichedWithLexiconStatus (exn, lex_stat) as exn' ->
       (match exn with
       | Sys.Break -> HLog.error "user break!"
       | HExtlib.Localized (floc,CicNotationParser.Parse_error err) ->
           let (x, y) = HExtlib.loc_of_floc floc in
           HLog.error (sprintf "Parse error at %d-%d: %s" x y err)
-      | exn when matita_debug -> raise exn
+      | exn when matita_debug -> raise exn'
       | exn -> HLog.error (snd (MatitaExcPp.to_string exn)));
       LexiconSync.time_travel ~present:lex_stat ~past:initial_lexicon_status;
       pp_times fname false big_bang big_bang_u big_bang_s;
       clean_exit baseuri false
-  | Sys.Break as exn ->
-     if matita_debug then raise exn; 
+  | Sys.Break when not matita_debug ->
      HLog.error "user break!";
      pp_times fname false big_bang big_bang_u big_bang_s;
      clean_exit baseuri false
-  | exn ->
-       if matita_debug then raise exn; 
+  | exn when not matita_debug ->
        HLog.error 
          ("Unwrapped exception, please fix: "^ snd (MatitaExcPp.to_string exn));
        pp_times fname false big_bang big_bang_u big_bang_s;