about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/librustc_back/target/mod.rs23
1 files changed, 11 insertions, 12 deletions
diff --git a/src/librustc_back/target/mod.rs b/src/librustc_back/target/mod.rs
index a13a94e12e5..d7c68d9f2a9 100644
--- a/src/librustc_back/target/mod.rs
+++ b/src/librustc_back/target/mod.rs
@@ -69,19 +69,18 @@ macro_rules! supported_targets {
         /// List of supported targets
         pub const TARGETS: &'static [&'static str] = &[$($triple),*];
 
-        // this would use a match if stringify! were allowed in pattern position
         fn load_specific(target: &str) -> Option<Target> {
-            if false { }
-            $(
-                else if target == $triple {
-                    let mut t = $module::target();
-                    t.options.is_builtin = true;
-                    debug!("Got builtin target: {:?}", t);
-                    return Some(t);
-                }
-            )*
-
-            None
+            match target {
+                $(
+                    $triple => {
+                        let mut t = $module::target();
+                        t.options.is_builtin = true;
+                        debug!("Got builtin target: {:?}", t);
+                        Some(t)
+                    },
+                )+
+                _ => None
+            }
         }
     )
 }