blob: c6e77627b4d2e068c2a33e255f099a5dbc4a6c12 [file] [log] [blame]
// { dg-output "correct\r*" }
extern "C" {
fn puts(s: *const i8);
}
fn main() -> i32 {
let a = [0, 4, 5, 6, 1];
let mut ret = 1;
match a {
[1, .., b] => {
/* should not take this path */
unsafe { puts("wrong\0" as *const str as *const i8) }
}
[0, .., 0] => {
/* should not take this path */
unsafe { puts("wrong\0" as *const str as *const i8) }
},
[0, .., b] => {
ret -= b;
unsafe { puts("correct\0" as *const str as *const i8) }
},
_ => {}
}
ret
}