| // compile-flags: -C overflow-checks=no |
| |
| fn use_zst(_: ((), ())) { } |
| |
| struct Temp { |
| x: u8 |
| } |
| |
| fn use_u8(_: u8) { } |
| |
| fn main() { |
| let ((), ()) = ((), ()); |
| use_zst(((), ())); |
| |
| use_u8((Temp { x : 40 }).x + 2); |
| } |
| |
| // END RUST SOURCE |
| |
| // START rustc.main.SimplifyLocals.before.mir |
| // let mut _0: (); |
| // let mut _1: ((), ()); |
| // let mut _2: (); |
| // let mut _3: (); |
| // let _4: (); |
| // let mut _5: ((), ()); |
| // let mut _6: (); |
| // let mut _7: (); |
| // let _8: (); |
| // let mut _9: u8; |
| // let mut _10: u8; |
| // let mut _11: Temp; |
| // scope 1 { |
| // } |
| // bb0: { |
| // StorageLive(_1); |
| // StorageLive(_2); |
| // _2 = const Scalar(<ZST>) : (); |
| // StorageLive(_3); |
| // _3 = const Scalar(<ZST>) : (); |
| // _1 = const Scalar(<ZST>) : ((), ()); |
| // StorageDead(_3); |
| // StorageDead(_2); |
| // StorageDead(_1); |
| // StorageLive(_4); |
| // StorageLive(_6); |
| // _6 = const Scalar(<ZST>) : (); |
| // StorageLive(_7); |
| // _7 = const Scalar(<ZST>) : (); |
| // StorageDead(_7); |
| // StorageDead(_6); |
| // _4 = const use_zst(const Scalar(<ZST>) : ((), ())) -> bb1; |
| // } |
| // bb1: { |
| // StorageDead(_4); |
| // StorageLive(_8); |
| // StorageLive(_10); |
| // StorageLive(_11); |
| // _11 = const Scalar(0x28) : Temp; |
| // _10 = const 40u8; |
| // StorageDead(_10); |
| // _8 = const use_u8(const 42u8) -> bb2; |
| // } |
| // bb2: { |
| // StorageDead(_11); |
| // StorageDead(_8); |
| // return; |
| // } |
| // END rustc.main.SimplifyLocals.before.mir |
| // START rustc.main.SimplifyLocals.after.mir |
| // let mut _0: (); |
| // let _1: (); |
| // let _2: (); |
| // scope 1 { |
| // } |
| // bb0: { |
| // StorageLive(_1); |
| // _1 = const use_zst(const Scalar(<ZST>) : ((), ())) -> bb1; |
| // } |
| // bb1: { |
| // StorageDead(_1); |
| // StorageLive(_2); |
| // _2 = const use_u8(const 42u8) -> bb2; |
| // } |
| // bb2: { |
| // StorageDead(_2); |
| // return; |
| // } |
| // END rustc.main.SimplifyLocals.after.mir |