rust/tests/run-make/intrinsic-unreachable/exit-ret.rs

15 lines
393 B
Rust
Raw Normal View History

2014-09-04 18:09:18 -05:00
#![crate_type="lib"]
use std::arch::asm;
2014-09-04 18:09:18 -05:00
#[deny(unreachable_code)]
pub fn exit(n: usize) -> i32 {
2014-09-04 18:09:18 -05:00
unsafe {
// Pretend this asm is an exit() syscall.
asm!("/*{0}*/", in(reg) n);
2014-09-04 18:09:18 -05:00
}
// This return value is just here to generate some extra code for a return
// value, making it easier for the test script to detect whether the
// compiler deleted it.
42
2014-09-04 18:09:18 -05:00
}