| - // MIR for `main` before DataflowConstProp | |
| + // MIR for `main` after DataflowConstProp | |
| fn main() -> () { | |
| let mut _0: (); | |
| let _1: A; | |
| let mut _2: std::boxed::Box<[bool]>; | |
| scope 1 { | |
| debug a => _1; | |
| } | |
| scope 2 (inlined <Box<[bool]> as Default>::default) { | |
| let _3: std::ptr::Unique<[bool]>; | |
| let mut _4: std::ptr::Unique<[bool; 0]>; | |
| scope 3 { | |
| } | |
| scope 4 (inlined std::ptr::Unique::<[bool; 0]>::dangling) { | |
| let mut _5: std::ptr::NonNull<[bool; 0]>; | |
| scope 5 (inlined NonNull::<[bool; 0]>::dangling) { | |
| scope 6 { | |
| scope 8 (inlined std::mem::Alignment::as_nonzero_usize) { | |
| } | |
| scope 9 (inlined NonNull::<[bool; 0]>::without_provenance) { | |
| } | |
| } | |
| scope 7 (inlined std::mem::Alignment::of::<[bool; 0]>) { | |
| } | |
| } | |
| } | |
| } | |
| bb0: { | |
| StorageLive(_1); | |
| StorageLive(_2); | |
| StorageLive(_3); | |
| StorageLive(_4); | |
| StorageLive(_5); | |
| _5 = const NonNull::<[bool; 0]> {{ pointer: {0x1 as *const [bool; 0]} is !null }}; | |
| _4 = const std::ptr::Unique::<[bool; 0]> {{ pointer: NonNull::<[bool; 0]> {{ pointer: {0x1 as *const [bool; 0]} is !null }}, _marker: PhantomData::<[bool; 0]> }}; | |
| StorageDead(_5); | |
| _3 = const std::ptr::Unique::<[bool]> {{ pointer: NonNull::<[bool]> {{ pointer: Indirect { alloc_id: ALLOC0, offset: Size(0 bytes) }: (*const [bool]) is !null }}, _marker: PhantomData::<[bool]> }}; | |
| StorageDead(_4); | |
| _2 = const Box::<[bool]>(std::ptr::Unique::<[bool]> {{ pointer: NonNull::<[bool]> {{ pointer: Indirect { alloc_id: ALLOC1, offset: Size(0 bytes) }: (*const [bool]) is !null }}, _marker: PhantomData::<[bool]> }}, std::alloc::Global); | |
| StorageDead(_3); | |
| _1 = const A {{ foo: Box::<[bool]>(std::ptr::Unique::<[bool]> {{ pointer: NonNull::<[bool]> {{ pointer: Indirect { alloc_id: ALLOC2, offset: Size(0 bytes) }: (*const [bool]) is !null }}, _marker: PhantomData::<[bool]> }}, std::alloc::Global) }}; | |
| StorageDead(_2); | |
| _0 = const (); | |
| drop(_1) -> [return: bb1, unwind unreachable]; | |
| } | |
| bb1: { | |
| StorageDead(_1); | |
| return; | |
| } | |
| } | |
| ALLOC2 (size: 16, align: 8) { .. } | |
| ALLOC1 (size: 16, align: 8) { .. } | |
| ALLOC0 (size: 16, align: 8) { .. } | |