// edition:2018 // check-pass #![feature(async_closure, type_alias_impl_trait)] type Tait = impl async Fn(); fn tait() -> Tait { || async {} } fn foo(x: impl async Fn()) -> impl async Fn() { x } fn param() {} fn main() {}