diff options
Diffstat (limited to 'tests/ui/issues/issue-22536-copy-mustnt-zero.rs')
-rw-r--r-- | tests/ui/issues/issue-22536-copy-mustnt-zero.rs | 28 |
1 files changed, 0 insertions, 28 deletions
diff --git a/tests/ui/issues/issue-22536-copy-mustnt-zero.rs b/tests/ui/issues/issue-22536-copy-mustnt-zero.rs deleted file mode 100644 index 017f36484..000000000 --- a/tests/ui/issues/issue-22536-copy-mustnt-zero.rs +++ /dev/null @@ -1,28 +0,0 @@ -// run-pass -// Regression test for Issue #22536: If a type implements Copy, then -// moving it must not zero the original memory. - - -trait Resources { - type Buffer: Copy; - fn foo(&self) {} -} - -struct BufferHandle<R: Resources> { - raw: <R as Resources>::Buffer, -} -impl<R: Resources> Copy for BufferHandle<R> {} -impl<R: Resources> Clone for BufferHandle<R> { - fn clone(&self) -> BufferHandle<R> { *self } -} - -enum Res {} -impl Resources for Res { - type Buffer = u32; -} - -fn main() { - let b: BufferHandle<Res> = BufferHandle { raw: 1 }; - let c = b; - assert_eq!(c.raw, b.raw) -} |