})()
}
+pub fn async_closure_explicit_return_type(x: &mut i32) -> impl Future<Output=&i32> {
+ (async move || -> &i32 {
+ let y = &*x;
+ *x += 1; //~ ERROR cannot assign to `*x` because it is borrowed
+ y
+ })()
+}
+
pub fn async_block(x: &mut i32) -> impl Future<Output=&i32> {
async move {
let y = &*x;