//@ run-pass
pub fn main() {
let mut x = None;
match x {
None => {
// It is ok to reassign x here, because there is in
// fact no outstanding loan of x!
x = Some(0);
}
Some(_) => { }
assert_eq!(x, Some(0));