error[E0277]: the trait bound `T: Trait` is not satisfied
  --> $DIR/issue-89686.rs:18:9
   |
LL |         async move { self.f().await }
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Trait` is not implemented for `T`
   |
help: consider restricting type parameter `T`
   |
LL | type G<'a, T: Trait> = impl Future<Output = ()> + 'a;
   |             +++++++

error: aborting due to previous error

For more information about this error, try `rustc --explain E0277`.
