about summary refs log tree commit diff
path: root/src/comp/driver
diff options
context:
space:
mode:
authorGraydon Hoare <graydon@mozilla.com>2011-05-16 19:04:45 -0700
committerGraydon Hoare <graydon@mozilla.com>2011-05-16 19:04:45 -0700
commita2e2e781035a7e99cd4b8320caeeb8566590d21e (patch)
tree0987ea09d9297789023c0b982a569f5107ba92ee /src/comp/driver
parentfbbc1a77d242fafa1393127defa7ffec0bcb9e54 (diff)
parent41b7af9652038712acf223bf9a309a3cc9be6281 (diff)
downloadrust-a2e2e781035a7e99cd4b8320caeeb8566590d21e.tar.gz
rust-a2e2e781035a7e99cd4b8320caeeb8566590d21e.zip
Merge remote branch 'origin/master' into HEAD
Conflicts:
	src/comp/middle/trans.rs
Diffstat (limited to 'src/comp/driver')
-rw-r--r--src/comp/driver/rustc.rs34
1 files changed, 20 insertions, 14 deletions
diff --git a/src/comp/driver/rustc.rs b/src/comp/driver/rustc.rs
index f2f082323fa..6beb805169d 100644
--- a/src/comp/driver/rustc.rs
+++ b/src/comp/driver/rustc.rs
@@ -9,7 +9,7 @@ import middle::trans;
 import middle::resolve;
 import middle::ty;
 import middle::typeck;
-import middle::typestate_check;
+import middle::tstate::ck;
 import back::link;
 import lib::llvm;
 import util::common;
@@ -105,7 +105,8 @@ fn compile_input(session::session sess,
 
     if (sess.get_opts().run_typestate) {
         crate = time(time_passes, "typestate checking",
-                     bind typestate_check::check_crate(crate, def_map));
+                     bind middle::tstate::ck::check_crate(node_type_table,
+                                                          ty_cx, crate));
     }
 
     auto llmod = time[llvm::ModuleRef](time_passes, "translation",
@@ -165,26 +166,31 @@ options:
 }
 
 fn get_os(str triple) -> session::os {
-    if (_str::find(triple, "win32") > 0 ||
-        _str::find(triple, "mingw32") > 0 ) {
+    if (_str::find(triple, "win32") >= 0 ||
+        _str::find(triple, "mingw32") >= 0 ) {
         ret session::os_win32;
-    } else if (_str::find(triple, "darwin") > 0) { ret session::os_macos; }
-    else if (_str::find(triple, "linux") > 0) { ret session::os_linux; }
+    } else if (_str::find(triple, "darwin") >= 0) { ret session::os_macos; }
+    else if (_str::find(triple, "linux") >= 0) { ret session::os_linux; }
+    else { log_err "Unknown operating system!"; fail; }
 }
 
 fn get_arch(str triple) -> session::arch {
-    if (_str::find(triple, "i386") > 0 ||
-        _str::find(triple, "i486") > 0 ||
-        _str::find(triple, "i586") > 0 ||
-        _str::find(triple, "i686") > 0 ||
-        _str::find(triple, "i786") > 0 ) {
+    if (_str::find(triple, "i386") >= 0 ||
+        _str::find(triple, "i486") >= 0 ||
+        _str::find(triple, "i586") >= 0 ||
+        _str::find(triple, "i686") >= 0 ||
+        _str::find(triple, "i786") >= 0 ) {
         ret session::arch_x86;
-    } else if (_str::find(triple, "x86_64") > 0) {
+    } else if (_str::find(triple, "x86_64") >= 0) {
         ret session::arch_x64;
-    } else if (_str::find(triple, "arm") > 0 ||
-        _str::find(triple, "xscale") > 0 ) {
+    } else if (_str::find(triple, "arm") >= 0 ||
+        _str::find(triple, "xscale") >= 0 ) {
         ret session::arch_arm;
     }
+    else {
+        log_err ("Unknown architecture! " + triple);
+        fail;
+    }
 }
 
 fn get_default_sysroot(str binary) -> str {