mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-25 00:03:43 +00:00
37 lines
1.3 KiB
Plaintext
37 lines
1.3 KiB
Plaintext
error[E0382]: use of moved value: `s`
|
|
--> $DIR/issue-29723.rs:12:13
|
|
|
|
|
LL | let s = String::new();
|
|
| - move occurs because `s` has type `String`, which does not implement the `Copy` trait
|
|
LL | let _s = match 0 {
|
|
LL | 0 if { drop(s); false } => String::from("oops"),
|
|
| - value moved here
|
|
...
|
|
LL | s
|
|
| ^ value used here after move
|
|
|
|
|
help: consider cloning the value if the performance cost is acceptable
|
|
|
|
|
LL | 0 if { drop(s.clone()); false } => String::from("oops"),
|
|
| ++++++++
|
|
|
|
error[E0382]: use of moved value: `s`
|
|
--> $DIR/issue-29723.rs:20:14
|
|
|
|
|
LL | let s = String::new();
|
|
| - move occurs because `s` has type `String`, which does not implement the `Copy` trait
|
|
LL | let _s = match 0 {
|
|
LL | 0 if let Some(()) = { drop(s); None } => String::from("oops"),
|
|
| - value moved here
|
|
LL | _ => s
|
|
| ^ value used here after move
|
|
|
|
|
help: consider cloning the value if the performance cost is acceptable
|
|
|
|
|
LL | 0 if let Some(()) = { drop(s.clone()); None } => String::from("oops"),
|
|
| ++++++++
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0382`.
|