summaryrefslogtreecommitdiffstats
path: root/src/test/ui/deriving/deriving-with-repr-packed.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/deriving/deriving-with-repr-packed.rs')
-rw-r--r--src/test/ui/deriving/deriving-with-repr-packed.rs36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/test/ui/deriving/deriving-with-repr-packed.rs b/src/test/ui/deriving/deriving-with-repr-packed.rs
deleted file mode 100644
index 8ce444be1..000000000
--- a/src/test/ui/deriving/deriving-with-repr-packed.rs
+++ /dev/null
@@ -1,36 +0,0 @@
-// run-pass
-// check that derive on a packed struct does not call field
-// methods with a misaligned field.
-
-use std::mem;
-
-#[derive(Copy, Clone)]
-struct Aligned(usize);
-
-#[inline(never)]
-fn check_align(ptr: *const Aligned) {
- assert_eq!(ptr as usize % mem::align_of::<Aligned>(),
- 0);
-}
-
-impl PartialEq for Aligned {
- fn eq(&self, other: &Self) -> bool {
- check_align(self);
- check_align(other);
- self.0 == other.0
- }
-}
-
-#[repr(packed)]
-#[derive(Copy, Clone, PartialEq)]
-struct Packed(Aligned, Aligned);
-
-#[derive(PartialEq)]
-#[repr(C)]
-struct Dealigned<T>(u8, T);
-
-fn main() {
- let d1 = Dealigned(0, Packed(Aligned(1), Aligned(2)));
- let ck = d1 == d1;
- assert!(ck);
-}