| error[E0507]: cannot move out of `x` which is behind a mutable reference |
| --> $DIR/closure-shim-borrowck-error.rs:12:18 |
| | |
| LL | needs_fn_mut(async || { |
| | ^^^^^^^^ `x` is moved here |
| LL | |
| LL | x.hello(); |
| | - |
| | | |
| | variable moved due to use in coroutine |
| | move occurs because `x` has type `Ty`, which does not implement the `Copy` trait |
| | |
| note: if `Ty` implemented `Clone`, you could clone the value |
| --> $DIR/closure-shim-borrowck-error.rs:18:1 |
| | |
| LL | x.hello(); |
| | - you could clone this value |
| ... |
| LL | struct Ty; |
| | ^^^^^^^^^ consider implementing `Clone` for this type |
| |
| error: aborting due to 1 previous error |
| |
| For more information about this error, try `rustc --explain E0507`. |