mirror of https://github.com/rust-lang/rust.git
33 lines
367 B
Rust
33 lines
367 B
Rust
//@ known-bug: #113846
|
|
trait Www {
|
|
type W;
|
|
}
|
|
|
|
trait Xxx: Www<W = Self::X> {
|
|
type X;
|
|
}
|
|
|
|
trait Yyy: Xxx {}
|
|
|
|
trait Zzz<'a>: Yyy + Xxx<X = Self::Z> {
|
|
type Z;
|
|
}
|
|
|
|
trait Aaa {
|
|
type Y: Yyy;
|
|
}
|
|
|
|
trait Bbb: Aaa<Y = Self::B> {
|
|
type B: for<'a> Zzz<'a>;
|
|
}
|
|
|
|
impl<T> Bbb for T
|
|
where
|
|
T: Aaa,
|
|
T::Y: for<'a> Zzz<'a>,
|
|
{
|
|
type B = T::Y;
|
|
}
|
|
|
|
pub fn main() {}
|