]>
Commit | Line | Data |
---|---|---|
1a4d82fc JJ |
1 | enum Enum<'a> { |
2 | A(&'a isize), | |
3 | B(bool), | |
4 | } | |
5 | ||
6 | fn foo() -> isize { | |
7 | let mut n = 42; | |
8 | let mut x = Enum::A(&mut n); | |
9 | match x { | |
10 | Enum::A(_) if { x = Enum::B(false); false } => 1, | |
e1599b0c | 11 | //~^ ERROR cannot assign `x` in match guard |
1a4d82fc | 12 | Enum::A(_) if { let y = &mut x; *y = Enum::B(false); false } => 1, |
e1599b0c | 13 | //~^ ERROR cannot mutably borrow `x` in match guard |
1a4d82fc JJ |
14 | Enum::A(p) => *p, |
15 | Enum::B(_) => 2, | |
16 | } | |
17 | } | |
18 | ||
19 | fn main() { | |
20 | foo(); | |
21 | } |