error[E0623]: lifetime mismatch --> $DIR/ref-self-async.rs:23:9 | LL | async fn ref_self(&self, f: &u32) -> &u32 { | ----- ---- | | | | | this `async fn` implicitly returns an `impl Future` | this parameter and the returned future are declared with different lifetimes... LL | f | ^ ...but data from `f` is held across an await point here error[E0623]: lifetime mismatch --> $DIR/ref-self-async.rs:29:9 | LL | async fn ref_Self(self: &Self, f: &u32) -> &u32 { | ----- ---- | | | | | this `async fn` implicitly returns an `impl Future` | this parameter and the returned future are declared with different lifetimes... LL | f | ^ ...but data from `f` is held across an await point here error[E0623]: lifetime mismatch --> $DIR/ref-self-async.rs:33:9 | LL | async fn box_ref_Self(self: Box<&Self>, f: &u32) -> &u32 { | ----- ---- | | | | | this `async fn` implicitly returns an `impl Future` | this parameter and the returned future are declared with different lifetimes... LL | f | ^ ...but data from `f` is held across an await point here error[E0623]: lifetime mismatch --> $DIR/ref-self-async.rs:37:9 | LL | async fn pin_ref_Self(self: Pin<&Self>, f: &u32) -> &u32 { | ----- ---- | | | | | this `async fn` implicitly returns an `impl Future` | this parameter and the returned future are declared with different lifetimes... LL | f | ^ ...but data from `f` is held across an await point here error[E0623]: lifetime mismatch --> $DIR/ref-self-async.rs:41:9 | LL | async fn box_box_ref_Self(self: Box>, f: &u32) -> &u32 { | ----- ---- | | | | | this `async fn` implicitly returns an `impl Future` | this parameter and the returned future are declared with different lifetimes... LL | f | ^ ...but data from `f` is held across an await point here error[E0623]: lifetime mismatch --> $DIR/ref-self-async.rs:45:9 | LL | async fn box_pin_ref_Self(self: Box>, f: &u32) -> &u32 { | ----- ---- | | | | | this `async fn` implicitly returns an `impl Future` | this parameter and the returned future are declared with different lifetimes... LL | f | ^ ...but data from `f` is held across an await point here error[E0623]: lifetime mismatch --> $DIR/ref-self-async.rs:49:9 | LL | async fn wrap_ref_Self_Self(self: Wrap<&Self, Self>, f: &u8) -> &u8 { | ----- --- | | | | | this `async fn` implicitly returns an `impl Future` | this parameter and the returned future are declared with different lifetimes... LL | f | ^ ...but data from `f` is held across an await point here error: aborting due to 7 previous errors For more information about this error, try `rustc --explain E0623`.