summary refs log tree commit diff
path: root/src/librustc/rustc.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/librustc/rustc.rs')
-rw-r--r--src/librustc/rustc.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/librustc/rustc.rs b/src/librustc/rustc.rs
index f1f7a7bf2d6..7599de1a9a3 100644
--- a/src/librustc/rustc.rs
+++ b/src/librustc/rustc.rs
@@ -394,13 +394,14 @@ pub fn monitor(f: ~fn(@diagnostic::Emitter)) {
 }
 
 pub fn main() {
-    let args = os::args();
-    main_args(args);
+    std::os::set_exit_status(main_args(std::os::args()));
 }
 
-pub fn main_args(args: &[~str]) {
+pub fn main_args(args: &[~str]) -> int {
     let owned_args = args.to_owned();
     do monitor |demitter| {
         run_compiler(owned_args, demitter);
     }
+
+    return 0;
 }