From c88ae0814f322f82e8daf53b19086326bbca0327 Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Wed, 25 Nov 2009 08:38:12 -0500 Subject: Exit code of 1 on compilation failure --- src/compiler.sml | 6 +++--- tests/bad.ur | 1 + tests/bad.urp | 2 ++ 3 files changed, 6 insertions(+), 3 deletions(-) create mode 100644 tests/bad.ur create mode 100644 tests/bad.urp diff --git a/src/compiler.sml b/src/compiler.sml index 6fd107a7..c4000e84 100644 --- a/src/compiler.sml +++ b/src/compiler.sml @@ -928,16 +928,16 @@ fun compileC {cname, oname, ename, libs, profile, debug, link = link'} = val link = foldl (fn (s, link) => link ^ " " ^ s) link link' in if not (OS.Process.isSuccess (OS.Process.system compile)) then - print "C compilation failed\n" + OS.Process.exit OS.Process.failure else if not (OS.Process.isSuccess (OS.Process.system link)) then - print "C linking failed\n" + OS.Process.exit OS.Process.failure else () end fun compile job = case run toChecknest job of - NONE => print "Ur compilation failed\n" + NONE => OS.Process.exit OS.Process.failure | SOME file => let val job = valOf (run (transform parseUrp "parseUrp") job) diff --git a/tests/bad.ur b/tests/bad.ur new file mode 100644 index 00000000..60419db7 --- /dev/null +++ b/tests/bad.ur @@ -0,0 +1 @@ +fun main $ = 0 diff --git a/tests/bad.urp b/tests/bad.urp new file mode 100644 index 00000000..3e17f350 --- /dev/null +++ b/tests/bad.urp @@ -0,0 +1,2 @@ + +bad -- cgit v1.2.3