// Regression test for issue #57807 - ensure
// that we properly unify associated types within
// a type alias impl trait
// check-pass
#![feature(type_alias_impl_trait)]
trait Bar {
type A;
}
impl Bar for () {
type A = ();
}
trait Foo {
type A;
type B: Bar;
fn foo() -> Self::B;
}
impl Foo for () {
type A = ();
type B = impl Bar;
fn foo() -> Self::B {
()
}
}
fn main() {}