- // MIR for `unwrap_unchecked` before InstSimplify-after-simplifycfg + // MIR for `unwrap_unchecked` after InstSimplify-after-simplifycfg fn unwrap_unchecked(_1: Option) -> i32 { debug x => _1; let mut _0: i32; let mut _2: std::option::Option; scope 1 (inlined #[track_caller] Option::::unwrap_unchecked) { let mut _3: isize; scope 2 { } scope 3 (inlined #[track_caller] unreachable_unchecked) { let _4: (); scope 4 (inlined core::ub_checks::check_language_ub) { let mut _5: bool; scope 5 (inlined core::ub_checks::check_language_ub::runtime) { } } } } bb0: { StorageLive(_2); _2 = copy _1; StorageLive(_3); StorageLive(_4); _3 = discriminant(_2); switchInt(move _3) -> [0: bb2, 1: bb3, otherwise: bb1]; } bb1: { unreachable; } bb2: { StorageLive(_5); - _5 = UbChecks(); + _5 = const false; assume(copy _5); _4 = unreachable_unchecked::precondition_check() -> [return: bb1, unwind unreachable]; } bb3: { _0 = move ((_2 as Some).0: i32); StorageDead(_4); StorageDead(_3); StorageDead(_2); return; } }