- // MIR for `pointers` before InstSimplify-after-simplifycfg + // MIR for `pointers` after InstSimplify-after-simplifycfg fn pointers(_1: *const [i32], _2: *mut i32) -> () { debug const_ptr => _1; debug mut_ptr => _2; let mut _0: (); let _3: &[i32]; scope 1 { debug _a => _3; let _4: &i32; scope 2 { debug _b => _4; let _5: &mut i32; scope 3 { debug _c => _5; let _6: *const [i32]; scope 4 { debug _d => _6; let _7: *const i32; scope 5 { debug _e => _7; let _8: *mut i32; scope 6 { debug _f => _8; } } } } } } bb0: { StorageLive(_3); _3 = &(*_1); StorageLive(_4); _4 = &(*_2); StorageLive(_5); _5 = &mut (*_2); StorageLive(_6); - _6 = &raw const (*_1); + _6 = copy _1; StorageLive(_7); _7 = &raw const (*_2); StorageLive(_8); - _8 = &raw mut (*_2); + _8 = copy _2; _0 = const (); StorageDead(_8); StorageDead(_7); StorageDead(_6); StorageDead(_5); StorageDead(_4); StorageDead(_3); return; } }