]> git.proxmox.com Git - rustc.git/blame - src/test/ui/coherence/coherence-impls-copy.rs
New upstream version 1.41.1+dfsg1
[rustc.git] / src / test / ui / coherence / coherence-impls-copy.rs
CommitLineData
85aaf69f
SL
1#![feature(optin_builtin_traits)]
2
c34b1796 3use std::marker::Copy;
85aaf69f 4
83c7162d 5impl Copy for i32 {}
60c5eb7d
XL
6//~^ ERROR E0119
7//~| ERROR E0117
85aaf69f
SL
8enum TestE {
9 A
10}
11
12struct MyType;
13
14struct NotSync;
15impl !Sync for NotSync {}
16
c34b1796
AL
17impl Copy for TestE {}
18impl Clone for TestE { fn clone(&self) -> Self { *self } }
85aaf69f 19
c34b1796 20impl Copy for MyType {}
85aaf69f 21
c34b1796 22impl Copy for &'static mut MyType {}
60c5eb7d 23//~^ ERROR E0206
c34b1796 24impl Clone for MyType { fn clone(&self) -> Self { *self } }
85aaf69f 25
c34b1796 26impl Copy for (MyType, MyType) {}
60c5eb7d
XL
27//~^ ERROR E0206
28//~| ERROR E0117
c34b1796 29impl Copy for &'static NotSync {}
60c5eb7d 30//~^ ERROR E0119
c34b1796 31impl Copy for [MyType] {}
60c5eb7d
XL
32//~^ ERROR E0206
33//~| ERROR E0117
c34b1796 34impl Copy for &'static [NotSync] {}
60c5eb7d
XL
35//~^ ERROR E0119
36//~| ERROR E0117
85aaf69f 37fn main() {
85aaf69f 38}