diff options
Diffstat (limited to 'tests/ui/never_type/impl_trait_fallback4.rs')
-rw-r--r-- | tests/ui/never_type/impl_trait_fallback4.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/ui/never_type/impl_trait_fallback4.rs b/tests/ui/never_type/impl_trait_fallback4.rs new file mode 100644 index 000000000..fe62773fa --- /dev/null +++ b/tests/ui/never_type/impl_trait_fallback4.rs @@ -0,0 +1,24 @@ +#![feature(type_alias_impl_trait)] + +trait T { + type Assoc: Cake; +} + +trait Cake: std::fmt::Display { + fn cake() -> Self; +} + +type Foo = impl T; + +fn foo() -> impl T { + //~^ ERROR `(): T` is not satisfied + panic!() +} + +fn a() -> Foo { + foo() +} + +fn main() { + println!("{}", <Foo as T>::Assoc::cake()); +} |