| 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`. |