Files
rust/src/test/ui/issues/issue-75777.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

21 lines
616 B
Rust
Raw Normal View History

2022-05-22 01:02:55 -04:00
// revisions: base nll
// ignore-compare-mode-nll
//[nll] compile-flags: -Z borrowck=mir
2020-09-02 19:19:43 +00:00
// Regression test for #75777.
// Checks that a boxed future can be properly constructed.
use std::future::{self, Future};
use std::pin::Pin;
type BoxFuture<'a, T> = Pin<Box<dyn Future<Output = T> + 'a + Send>>;
fn inject<'a, Env: 'a, A: 'a + Send>(v: A) -> Box<dyn FnOnce(&'a Env) -> BoxFuture<'a, A>> {
let fut: BoxFuture<'a, A> = Box::pin(future::ready(v));
Box::new(move |_| fut)
2022-05-22 01:02:55 -04:00
//[base]~^ ERROR: cannot infer an appropriate lifetime
//[nll]~^^ ERROR: lifetime may not live long enough
2020-09-02 19:19:43 +00:00
}
fn main() {}