struct NoCopy; //~ NOTE if `NoCopy` implemented `Clone`, you could clone the value | |
//~^ NOTE consider implementing `Clone` for this type | |
fn main() { | |
let x = NoCopy; | |
//~^ NOTE move occurs because `x` has type `NoCopy` | |
let f = move || { let y = x; }; | |
//~^ NOTE value moved into closure here | |
//~| NOTE variable moved due to use in closure | |
//~| NOTE you could clone this value | |
let z = x; | |
//~^ ERROR use of moved value: `x` | |
//~| NOTE value used here after move | |
} |