|  | - // MIR for `h` before Inline | 
|  | + // MIR for `h` after Inline | 
|  |  | 
|  | fn h() -> () { | 
|  | let mut _0: (); | 
|  | let _1: (!, !); | 
|  | +     let mut _2: fn() -> ! {sleep}; | 
|  | +     let mut _7: (); | 
|  | +     let mut _8: (); | 
|  | +     scope 1 (inlined call_twice::<!, fn() -> ! {sleep}>) { | 
|  | +         debug f => _2; | 
|  | +         let mut _3: &fn() -> ! {sleep}; | 
|  | +         let _4: !; | 
|  | +         let mut _5: &fn() -> ! {sleep}; | 
|  | +         scope 2 { | 
|  | +             debug a => _4; | 
|  | +             let _6: !; | 
|  | +             scope 3 { | 
|  | +                 debug b => _6; | 
|  | +             } | 
|  | +             scope 6 (inlined <fn() -> ! {sleep} as Fn<()>>::call - shim(fn() -> ! {sleep})) { | 
|  | +                 scope 7 (inlined sleep) { | 
|  | +                 } | 
|  | +             } | 
|  | +         } | 
|  | +         scope 4 (inlined <fn() -> ! {sleep} as Fn<()>>::call - shim(fn() -> ! {sleep})) { | 
|  | +             scope 5 (inlined sleep) { | 
|  | +             } | 
|  | +         } | 
|  | +     } | 
|  |  | 
|  | bb0: { | 
|  | StorageLive(_1); | 
|  | -         _1 = call_twice::<!, fn() -> ! {sleep}>(sleep) -> unwind unreachable; | 
|  | +         StorageLive(_2); | 
|  | +         _2 = sleep; | 
|  | +         StorageLive(_4); | 
|  | +         StorageLive(_6); | 
|  | +         StorageLive(_3); | 
|  | +         _3 = &_2; | 
|  | +         StorageLive(_7); | 
|  | +         _7 = const (); | 
|  | +         goto -> bb1; | 
|  | +     } | 
|  | + | 
|  | +     bb1: { | 
|  | +         goto -> bb1; | 
|  | } | 
|  | } | 
|  |  |