| #![feature(rustc_attrs)] | |
| #![feature(trait_alias)] | |
| #![feature(with_negative_coherence)] | |
| trait A {} | |
| trait B {} | |
| trait AB = A + B; | |
| impl A for u32 {} | |
| impl B for u32 {} | |
| #[rustc_strict_coherence] | |
| trait C {} | |
| impl<T: AB> C for T {} | |
| impl C for u32 {} | |
| //~^ ERROR conflicting implementations of trait `C` for type `u32` | |
| fn main() {} |