| // run-pass | |
| #![allow(dead_code)] | |
| enum E { | |
| V(u8), | |
| U(u8), | |
| W, | |
| } | |
| use E::*; | |
| fn main() { | |
| let mut e = V(10); | |
| if let V(x) | U(x) = e { | |
| assert_eq!(x, 10); | |
| } | |
| while let V(x) | U(x) = e { | |
| assert_eq!(x, 10); | |
| e = W; | |
| } | |
| // Accept leading `|`: | |
| let mut e = V(10); | |
| if let | V(x) | U(x) = e { | |
| assert_eq!(x, 10); | |
| } | |
| while let | V(x) | U(x) = e { | |
| assert_eq!(x, 10); | |
| e = W; | |
| } | |
| } |