| //@ check-pass | |
| #![feature(negative_impls)] | |
| #![feature(rustc_attrs)] | |
| #![feature(with_negative_coherence)] | |
| trait Foo {} | |
| impl !Foo for u32 {} | |
| #[rustc_strict_coherence] | |
| struct MyStruct<T>(T); | |
| impl MyStruct<u32> { | |
| fn method(&self) {} | |
| } | |
| impl<T> MyStruct<T> | |
| where | |
| T: Foo, | |
| { | |
| fn method(&self) {} | |
| } | |
| fn main() {} |