error[E0382]: use of moved value: `s` --> $DIR/issue-29723.rs:22:13 | LL | 0 if { drop(s); false } => String::from("oops"), | - value moved here ... LL | s | ^ value used here after move | = note: move occurs because `s` has type `std::string::String`, which does not implement the `Copy` trait error: aborting due to previous error For more information about this error, try `rustc --explain E0382`.