aboutsummaryrefslogtreecommitdiffstats
path: root/driver/Linker.ml
diff options
context:
space:
mode:
authorBernhard Schommer <bschommer@users.noreply.github.com>2018-02-08 16:38:54 +0100
committerXavier Leroy <xavierleroy@users.noreply.github.com>2018-02-08 16:38:54 +0100
commitf02f00a01b598567f70e138c144d9581973802e6 (patch)
treedb15b2ad60692f936435cdd784e7bb7f6a977a40 /driver/Linker.ml
parent54fa98c3833091a75d0c1afe84b42afc35452fe3 (diff)
downloadcompcert-kvx-f02f00a01b598567f70e138c144d9581973802e6.tar.gz
compcert-kvx-f02f00a01b598567f70e138c144d9581973802e6.zip
Refactor the handling of errors and warnings (#44)
* Module Cerrors is now called Diagnostic and can be used in parts of CompCert other than cparser/ * Replaced eprintf error. Instead of having eprintf msg; exit 2 use the functions from the Diagnostics module. * Raise on error before calling external tools. * Added diagnostics to clightgen. * Fix error handling of AsmToJson. * Cleanup error handling of Elab and C2C. *The implementation of location printing (file & line) is simplified and correctly prints valid filenames with invalid lines.
Diffstat (limited to 'driver/Linker.ml')
-rw-r--r--driver/Linker.ml4
1 files changed, 2 insertions, 2 deletions
diff --git a/driver/Linker.ml b/driver/Linker.ml
index 37a5cde0..6e6ad6b4 100644
--- a/driver/Linker.ml
+++ b/driver/Linker.ml
@@ -19,6 +19,7 @@ open Driveraux
(* Linking *)
let linker exe_name files =
+ Diagnostics.raise_on_errors ();
let cmd = List.concat [
Configuration.linker;
["-o"; exe_name];
@@ -29,8 +30,7 @@ let linker exe_name files =
] in
let exc = command cmd in
if exc <> 0 then begin
- command_error "linker" exc;
- exit 2
+ command_error "linker" exc
end