]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/matitacLib.ml
first matitadep snapshot
[helm.git] / helm / matita / matitacLib.ml
index 7653427377324b1fe39f45d28347e33f8474adcd..4d04d371c8ea07f4de3d08122d13474d8f05c0fb 100644 (file)
@@ -65,7 +65,7 @@ let run_script is eval_function  =
   | MatitaEngine.Drop  
   | CicTextualParser2.Parse_error _ as exn -> raise exn
   | exn -> 
-      MatitaLog.error (Printexc.to_string exn);
+      MatitaLog.error (MatitaExcPp.to_string exn);
       raise exn
 
 let fname () =
@@ -80,7 +80,7 @@ let pp_ocaml_mode () =
   MatitaLog.message "";
   MatitaLog.message "                      ** Entering Ocaml mode ** ";
   MatitaLog.message "";
-  MatitaLog.message "Type 'MatitacLib.go ();;' to enter an interactive matitac";
+  MatitaLog.message "Type 'go ();;' to enter an interactive matitac";
   MatitaLog.message ""
   
 let rec go () = 
@@ -98,6 +98,7 @@ let rec go () =
      else
       let (x, y) = CicAst.loc_of_floc floc in
       MatitaLog.error (sprintf "Parse error at %d-%d: %s" x y err);
+      go ()
   | exn -> MatitaLog.error (Printexc.to_string exn); go ()
   
 let main ~mode = 
@@ -140,6 +141,7 @@ let main ~mode =
      begin
        MatitaLog.message 
          (sprintf "execution of %s completed in %s." fname (hou^min^sec));
+         close_out (open_out (MatitaMisc.obj_file_of_script fname));
        exit 0
      end
   with 
@@ -153,5 +155,7 @@ let main ~mode =
      let (x, y) = CicAst.loc_of_floc floc in
      MatitaLog.error (sprintf "Parse error at %d-%d: %s" x y err);
      Http_getter.sync_dump_file ();
-     exit 1
-  
+     if mode = `COMPILER then
+       exit 1
+     else
+       go ()