// Issue #72117 | |
//@ edition:2018 | |
use core::future::Future; | |
use core::pin::Pin; | |
pub type BoxFuture<'a, T> = Pin<Box<dyn Future<Output = T> + Send + 'a>>; | |
impl<T: ?Sized> FutureExt for T where T: Future {} | |
trait FutureExt: Future { | |
fn boxed<'a>(self) -> BoxFuture<'a, Self::Output> | |
where | |
Self: Sized + Send + 'a, | |
{ | |
Box::pin(self) | |
} | |
} | |
fn main() { | |
let _: BoxFuture<'static, bool> = async {}.boxed(); | |
//~^ ERROR: mismatched types | |
} |