| //@ test-mir-pass: InstSimplify-after-simplifycfg | |
| //@ compile-flags: -Cdebug-assertions=no -Zinline-mir | |
| // EMIT_MIR ub_check.unwrap_unchecked.InstSimplify-after-simplifycfg.diff | |
| pub fn unwrap_unchecked(x: Option<i32>) -> i32 { | |
| // CHECK-LABEL: fn unwrap_unchecked( | |
| // CHECK-NOT: UbChecks() | |
| // CHECK: [[assume:_.*]] = const false; | |
| // CHECK-NEXT: assume(copy [[assume]]); | |
| // CHECK-NEXT: unreachable_unchecked::precondition_check | |
| unsafe { x.unwrap_unchecked() } | |
| } | |
| fn main() { | |
| unwrap_unchecked(None); | |
| } |