blob: 9737bc7695d103b94c02cdf647ebce36a6174be5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
fn separate_arms() {
// Here both arms perform assignments, but only one is illegal.
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(ref r) => {
x = Some(1); //~ ERROR cannot assign to `x` because it is borrowed
drop(r);
}
}
}
fn main() {}
|