// Check that or patterns are lowered correctly in `for` loops. | |
// run-pass | |
#![feature(or_patterns)] | |
fn main() { | |
let v = vec![Ok(2), Err(3), Ok(5)]; | |
let mut w = Vec::new(); | |
for &(Ok(i) | Err(i)) in &v { | |
w.push(i); | |
} | |
let mut u = Vec::new(); | |
for Ok(i) | Err(i) in v { | |
u.push(i); | |
} | |
assert_eq!(w, [2, 3, 5]); | |
assert_eq!(u, [2, 3, 5]); | |
} |