diff options
Diffstat (limited to 'src/test/ui/union/union-derive-clone.rs')
-rw-r--r-- | src/test/ui/union/union-derive-clone.rs | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/src/test/ui/union/union-derive-clone.rs b/src/test/ui/union/union-derive-clone.rs deleted file mode 100644 index 7aa62146e..000000000 --- a/src/test/ui/union/union-derive-clone.rs +++ /dev/null @@ -1,39 +0,0 @@ -// revisions: mirunsafeck thirunsafeck -// [thirunsafeck]compile-flags: -Z thir-unsafeck - -use std::mem::ManuallyDrop; - -#[derive(Clone)] //~ ERROR the trait bound `U1: Copy` is not satisfied -union U1 { - a: u8, -} - -#[derive(Clone)] -union U2 { - a: u8, // OK -} - -impl Copy for U2 {} - -#[derive(Clone, Copy)] -union U3 { - a: u8, // OK -} - -#[derive(Clone, Copy)] -union U4<T: Copy> { - a: T, // OK -} - -#[derive(Clone, Copy)] -union U5<T> { - a: ManuallyDrop<T>, // OK -} - -#[derive(Clone)] -struct CloneNoCopy; - -fn main() { - let u = U5 { a: ManuallyDrop::new(CloneNoCopy) }; - let w = u.clone(); //~ ERROR the method -} |