2021-10-22 13:55:56 -05:00
|
|
|
#![feature(rustc_attrs)]
|
|
|
|
#![feature(trait_alias)]
|
2022-01-30 15:55:22 -06:00
|
|
|
#![feature(with_negative_coherence)]
|
2021-10-22 13:55:56 -05:00
|
|
|
|
|
|
|
trait A {}
|
|
|
|
trait B {}
|
|
|
|
trait AB = A + B;
|
|
|
|
|
|
|
|
impl A for u32 {}
|
|
|
|
impl B for u32 {}
|
|
|
|
|
|
|
|
#[rustc_strict_coherence]
|
2022-01-30 15:55:22 -06:00
|
|
|
trait C {}
|
2021-10-22 13:55:56 -05:00
|
|
|
impl<T: AB> C for T {}
|
|
|
|
impl C for u32 {}
|
2023-06-20 22:44:19 -05:00
|
|
|
//~^ ERROR conflicting implementations of trait `C` for type `u32`
|
2021-10-22 13:55:56 -05:00
|
|
|
|
|
|
|
fn main() {}
|