|
#![feature(type_alias_impl_trait)]
|
|
|
|
fn main() {}
|
|
|
|
trait T {}
|
|
impl T for i32 {}
|
|
|
|
fn should_ret_unit() -> impl T {
|
|
//~^ ERROR `(): T` is not satisfied
|
|
panic!()
|
|
}
|
|
|
|
type Foo = impl T;
|
|
|
|
fn a() -> Foo {
|
|
//~^ ERROR `(): T` is not satisfied
|
|
panic!()
|
|
}
|
|
|
|
fn b() -> Foo {
|
|
42
|
|
}
|