blob: f4b0bc36329eb1fb7f2be94a3c12b22e8913f698 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
//@ compile-flags: -Copt-level=3
#![crate_type = "lib"]
#[no_mangle]
pub fn test() -> u32 {
// CHECK-LABEL: @test(
// CHECK: ret i32 13
let s = [1, 2, 3, 4, 5, 6, 7];
let mut iter = s.iter();
let mut sum = 0;
while let Some(_) = iter.next() {
sum += iter.next().map_or(1, |&x| x)
}
sum
}
|