rust/tests/ui/async-await/async-closures/move-consuming-capture.stderr

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

27 lines
947 B
Plaintext
Raw Normal View History

2024-01-25 11:43:35 -06:00
error[E0382]: use of moved value: `x`
--> $DIR/move-consuming-capture.rs:17:9
|
LL | let x = async move || {
2024-02-10 16:43:35 -06:00
| - move occurs because `x` has type `{async closure@$DIR/move-consuming-capture.rs:13:17: 13:30}`, which does not implement the `Copy` trait
2024-01-25 11:43:35 -06:00
...
LL | x().await;
| --- `x` moved due to this method call
LL | x().await;
| ^ value used here after move
|
note: `async_call_once` takes ownership of the receiver `self`, which moves `x`
--> $SRC_DIR/core/src/ops/async_function.rs:LL:COL
help: you could `clone` the value and consume it, if the `NoCopy: Clone` trait bound could be satisfied
|
LL | x.clone()().await;
| ++++++++
help: consider annotating `NoCopy` with `#[derive(Clone)]`
|
LL + #[derive(Clone)]
LL | struct NoCopy;
|
2024-01-25 11:43:35 -06:00
error: aborting due to 1 previous error
For more information about this error, try `rustc --explain E0382`.