]> git.lizzy.rs Git - rust.git/commitdiff
Ignore win-tcb test on non-windows
authorBrian Anderson <banderson@mozilla.com>
Mon, 29 Sep 2014 18:34:53 +0000 (11:34 -0700)
committerBrian Anderson <banderson@mozilla.com>
Mon, 29 Sep 2014 18:34:53 +0000 (11:34 -0700)
src/test/run-pass/issue-13259-windows-tcb-trash.rs

index 94953730df896c4a1bbb9d770b65a6d0eba28c64..1a909db92e3283711fc00a60061fd0b116065d43 100644 (file)
@@ -1,28 +1,48 @@
+// Copyright 2014 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
 extern crate libc;
-use libc::{c_void, LPVOID, DWORD};
-use libc::types::os::arch::extra::LPWSTR;
 
-extern "system" {
-    fn FormatMessageW(flags: DWORD,
-                      lpSrc: LPVOID,
-                      msgId: DWORD,
-                      langId: DWORD,
-                      buf: LPWSTR,
-                      nsize: DWORD,
-                      args: *const c_void)
-                      -> DWORD;
+#[cfg(windows)]
+mod imp {
+    use libc::{c_void, LPVOID, DWORD};
+    use libc::types::os::arch::extra::LPWSTR;
+
+    extern "system" {
+        fn FormatMessageW(flags: DWORD,
+                          lpSrc: LPVOID,
+                          msgId: DWORD,
+                          langId: DWORD,
+                          buf: LPWSTR,
+                          nsize: DWORD,
+                          args: *const c_void)
+                          -> DWORD;
+    }
+
+    pub fn test() {
+        let mut buf: [u16, ..50] = [0, ..50];
+        let ret = unsafe {
+            FormatMessageW(0x1000, 0 as *mut c_void, 1, 0x400,
+                           buf.as_mut_ptr(), buf.len() as u32, 0 as *const c_void)
+        };
+        // On some 32-bit Windowses (Win7-8 at least) this will fail with segmented
+        // stacks taking control of pvArbitrary
+        assert!(ret != 0);
+    }
 }
 
-fn test() {
-    let mut buf: [u16, ..50] = [0, ..50];
-    let ret = unsafe {
-        FormatMessageW(0x1000, 0 as *mut c_void, 1, 0x400,
-                       buf.as_mut_ptr(), buf.len() as u32, 0 as *const c_void)
-    };
-    // On some 32-bit Windowses (Win7-8 at least) this will fail with segmented
-    // stacks taking control of pvArbitrary
-    assert!(ret != 0);
+#[cfg(not(windows))]
+mod imp {
+    pub fn test() { }
 }
+
 fn main() {
-    test()
-}
\ No newline at end of file
+    imp::test()
+}