diff options
Diffstat (limited to 'src/test/ui/traits/syntax-trait-polarity.rs')
-rw-r--r-- | src/test/ui/traits/syntax-trait-polarity.rs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/test/ui/traits/syntax-trait-polarity.rs b/src/test/ui/traits/syntax-trait-polarity.rs new file mode 100644 index 000000000..ed2947493 --- /dev/null +++ b/src/test/ui/traits/syntax-trait-polarity.rs @@ -0,0 +1,25 @@ +#![feature(negative_impls)] + +use std::marker::Send; + +struct TestType; + +impl !TestType {} +//~^ ERROR inherent impls cannot be negative + +trait TestTrait {} + +unsafe impl !Send for TestType {} +//~^ ERROR negative impls cannot be unsafe +impl !TestTrait for TestType {} + +struct TestType2<T>(T); + +impl<T> !TestType2<T> {} +//~^ ERROR inherent impls cannot be negative + +unsafe impl<T> !Send for TestType2<T> {} +//~^ ERROR negative impls cannot be unsafe +impl<T> !TestTrait for TestType2<T> {} + +fn main() {} |