mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-27 09:14:20 +00:00
23 lines
569 B
Rust
23 lines
569 B
Rust
// test for https://github.com/rust-lang/rust/issues/29723
|
|
|
|
#![feature(if_let_guard)]
|
|
|
|
fn main() {
|
|
let s = String::new();
|
|
let _s = match 0 {
|
|
0 if { drop(s); false } => String::from("oops"),
|
|
_ => {
|
|
// This should trigger an error,
|
|
// s could have been moved from.
|
|
s
|
|
//~^ ERROR use of moved value: `s`
|
|
}
|
|
};
|
|
|
|
let s = String::new();
|
|
let _s = match 0 {
|
|
0 if let Some(()) = { drop(s); None } => String::from("oops"),
|
|
_ => s //~ ERROR use of moved value: `s`
|
|
};
|
|
}
|