1 #![feature(type_alias_impl_trait)]
14 type Bar: Bar<Foo = Self::Foo>;
16 fn foo() -> Self::Foo;
17 fn bar() -> Self::Bar;
25 fn foo() -> Self::Foo {
30 pub type FooImpl = impl Foo;
31 pub type BarImpl = impl Bar<Foo = FooImpl>;
37 fn foo() -> Self::Foo {
41 fn bar() -> Self::Bar {