error[E0505]: cannot move out of `x.0` because it is borrowed --> $DIR/guard-lifetime-1.rs:8:14 | LL | Some(mut y) if let Some(ref z) = y => { | ^^^^^ | | | move out of `x.0` occurs here | borrow of `x.0` occurs here LL | LL | let _z: &String = z; | - borrow later used here error: aborting due to previous error For more information about this error, try `rustc --explain E0505`.