error[E0623]: lifetime mismatch --> $DIR/ref-mut-struct-async.rs:13:9 | LL | async fn ref_Struct(self: &mut Struct, 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-mut-struct-async.rs:17:9 | LL | async fn box_ref_Struct(self: Box<&mut Struct>, 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-mut-struct-async.rs:21:9 | LL | async fn pin_ref_Struct(self: Pin<&mut Struct>, 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-mut-struct-async.rs:25:9 | LL | async fn box_box_ref_Struct(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-mut-struct-async.rs:29:9 | LL | async fn box_pin_ref_Struct(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: aborting due to 5 previous errors For more information about this error, try `rustc --explain E0623`.