| // Formerly this ICEd with the following message: | |
| // Tried to project an inherited associated type during coherence checking, | |
| // which is currently not supported. | |
| // | |
| // No we expect to run into a more user-friendly cycle error instead. | |
| #![feature(specialization)] | |
| trait Trait<T> { type Assoc; } | |
| //~^ ERROR E0391 | |
| impl<T> Trait<T> for Vec<T> { | |
| type Assoc = (); | |
| } | |
| impl Trait<u8> for Vec<u8> {} | |
| impl<T> Trait<T> for String { | |
| type Assoc = (); | |
| } | |
| impl Trait<<Vec<u8> as Trait<u8>>::Assoc> for String {} | |
| fn main() {} |