// MIR for `opt1` after SimplifyCfg-initial fn opt1(_1: &Result) -> &u32 { debug res => _1; let mut _0: &u32; let mut _2: isize; let _3: &u32; let mut _4: !; let mut _5: (); scope 1 { debug x => _3; } bb0: { PlaceMention(_1); falseEdge -> [real: bb4, imaginary: bb1]; } bb1: { _2 = discriminant((*_1)); switchInt(move _2) -> [1: bb3, otherwise: bb2]; } bb2: { FakeRead(ForMatchedPlace(None), _1); unreachable; } bb3: { FakeRead(ForMatchedPlace(None), (((*_1) as Err).0: Void)); unreachable; } bb4: { StorageLive(_3); _3 = &(((*_1) as Ok).0: u32); _0 = &(*_3); StorageDead(_3); return; } }