diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/coherence/coherence-impls-send.rs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/ui/coherence/coherence-impls-send.rs b/src/test/ui/coherence/coherence-impls-send.rs new file mode 100644 index 000000000..b7b57c602 --- /dev/null +++ b/src/test/ui/coherence/coherence-impls-send.rs @@ -0,0 +1,28 @@ +#![feature(negative_impls)] + +use std::marker::Copy; + +enum TestE { + A, +} + +struct MyType; + +struct NotSync; +impl !Sync for NotSync {} + +unsafe impl Send for TestE {} +unsafe impl Send for MyType {} +unsafe impl Send for (MyType, MyType) {} +//~^ ERROR E0117 + +unsafe impl Send for &'static NotSync {} +//~^ ERROR E0321 + +unsafe impl Send for [MyType] {} +//~^ ERROR E0117 + +unsafe impl Send for &'static [NotSync] {} +//~^ ERROR only traits defined in the current crate + +fn main() {} |