mirror of https://github.com/rust-lang/rust
24 lines
399 B
Rust
24 lines
399 B
Rust
//@ edition:2018
|
|
|
|
#![feature(type_alias_impl_trait)]
|
|
|
|
use std::future::Future;
|
|
|
|
type G<'a, T> = impl Future<Output = ()>;
|
|
|
|
trait Trait {
|
|
type F: Future<Output = ()>;
|
|
|
|
fn f(&self) -> Self::F;
|
|
|
|
fn g<'a>(&'a self) -> G<'a, Self>
|
|
where
|
|
Self: Sized,
|
|
{
|
|
async move { self.f().await }
|
|
//~^ ERROR: the trait bound `T: Trait` is not satisfied
|
|
}
|
|
}
|
|
|
|
fn main() {}
|