rust/tests/codegen/inherit_overflow.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

15 lines
534 B
Rust
Raw Normal View History

2023-02-11 08:59:19 +00:00
// compile-flags: -Zmir-enable-passes=+Inline,+ConstProp --crate-type lib
// revisions: ASSERT NOASSERT
//[ASSERT] compile-flags: -Coverflow-checks=on
//[NOASSERT] compile-flags: -Coverflow-checks=off
// CHECK-LABEL: define{{.*}} @assertion
// ASSERT: call void @{{.*4core9panicking5panic}}
2023-02-11 08:59:19 +00:00
// NOASSERT: ret i8 0
#[no_mangle]
pub fn assertion() -> u8 {
// Optimized MIR will replace this `CheckedBinaryOp` by `const (0, true)`.
// Verify that codegen does or does not emit the panic.
<u8 as std::ops::Add>::add(255, 1)
}