3 #![feature(generic_associated_types)]
4 #![feature(type_alias_impl_trait)]
6 use std::future::Future;
9 type Fut<'a> where Self: 'a;
10 fn make_fut<'a>(&'a self) -> Self::Fut<'a>;
13 impl MakeFut for &'_ mut () {
14 type Fut<'a> = impl Future<Output = ()>;
15 //~^ ERROR: the type `&mut ()` does not fulfill the required lifetime
17 fn make_fut<'a>(&'a self) -> Self::Fut<'a> {