]> git.lizzy.rs Git - rust.git/commitdiff
ptr_offset works fine with intptrcast now
authorRalf Jung <post@ralfj.de>
Sat, 6 Jul 2019 09:05:51 +0000 (11:05 +0200)
committerRalf Jung <post@ralfj.de>
Wed, 10 Jul 2019 12:36:56 +0000 (14:36 +0200)
tests/run-pass-noseed/ptr_offset.rs [deleted file]
tests/run-pass/ptr_offset.rs [new file with mode: 0644]

diff --git a/tests/run-pass-noseed/ptr_offset.rs b/tests/run-pass-noseed/ptr_offset.rs
deleted file mode 100644 (file)
index a836e02..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-// FIXME move this to run-pass, it should work with intptrcast.
-
-fn f() -> i32 { 42 }
-
-fn main() {
-    let v = [1i16, 2];
-    let x = &v as *const [i16; 2] as *const i16;
-    let x = unsafe { x.offset(1) };
-    assert_eq!(unsafe { *x }, 2);
-
-    // fn ptr offset
-    unsafe {
-        let p = f as fn() -> i32 as usize;
-        let x = (p as *mut u32).offset(0) as usize;
-        let f: fn() -> i32 = std::mem::transmute(x);
-        assert_eq!(f(), 42);
-    }
-}
diff --git a/tests/run-pass/ptr_offset.rs b/tests/run-pass/ptr_offset.rs
new file mode 100644 (file)
index 0000000..a836e02
--- /dev/null
@@ -0,0 +1,18 @@
+// FIXME move this to run-pass, it should work with intptrcast.
+
+fn f() -> i32 { 42 }
+
+fn main() {
+    let v = [1i16, 2];
+    let x = &v as *const [i16; 2] as *const i16;
+    let x = unsafe { x.offset(1) };
+    assert_eq!(unsafe { *x }, 2);
+
+    // fn ptr offset
+    unsafe {
+        let p = f as fn() -> i32 as usize;
+        let x = (p as *mut u32).offset(0) as usize;
+        let f: fn() -> i32 = std::mem::transmute(x);
+        assert_eq!(f(), 42);
+    }
+}