2023-06-08 07:18:34 +00:00
|
|
|
// EMIT_MIR_FOR_EACH_PANIC_STRATEGY
|
2024-04-20 11:19:34 +00:00
|
|
|
//@ test-mir-pass: DataflowConstProp
|
2023-02-08 20:28:39 +00:00
|
|
|
//@ compile-flags: -Zmir-enable-passes=+Inline
|
2022-10-15 17:24:02 +00:00
|
|
|
|
2022-10-25 00:27:27 +00:00
|
|
|
// EMIT_MIR inherit_overflow.main.DataflowConstProp.diff
|
2024-01-09 00:58:58 +00:00
|
|
|
// CHECK-LABEL: fn main(
|
2022-10-15 17:24:02 +00:00
|
|
|
fn main() {
|
2023-02-08 20:28:39 +00:00
|
|
|
// After inlining, this will contain a `CheckedBinaryOp`.
|
|
|
|
// Propagating the overflow is ok as codegen will just skip emitting the panic.
|
2024-01-09 00:58:58 +00:00
|
|
|
|
|
|
|
// CHECK: {{_.*}} = const (0_u8, true);
|
2024-01-20 16:09:14 +00:00
|
|
|
// CHECK: assert(!const true,
|
2022-10-15 17:24:02 +00:00
|
|
|
let _ = <u8 as std::ops::Add>::add(255, 1);
|
|
|
|
}
|