2017-05-16 08:04:32 -05:00
|
|
|
// 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)]
|
2020-06-16 03:06:35 -05:00
|
|
|
//~^ WARN the feature `specialization` is incomplete
|
2017-05-16 08:04:32 -05:00
|
|
|
|
|
|
|
trait Trait<T> { type Assoc; }
|
2019-10-26 10:28:02 -05:00
|
|
|
//~^ ERROR E0391
|
2017-05-16 08:04:32 -05:00
|
|
|
|
|
|
|
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() {}
|