| - // MIR for `test` before Inline | |
| + // MIR for `test` after Inline | |
| fn test() -> i32 { | |
| let mut _0: i32; | |
| - | |
| - bb0: { | |
| - _0 = inline_fn::<fn() -> i32 {yield_number}>(yield_number) -> [return: bb1, unwind unreachable]; | |
| + let mut _1: fn() -> i32 {yield_number}; | |
| + scope 1 (inlined inline_fn::<fn() -> i32 {yield_number}>) { | |
| + let mut _2: fn() -> i32 {yield_number}; | |
| + let mut _3: (); | |
| + scope 2 (inlined <fn() -> i32 {yield_number} as FnOnce<()>>::call_once - shim(fn() -> i32 {yield_number})) { | |
| + scope 3 (inlined yield_number) { | |
| + } | |
| + } | |
| } | |
| - bb1: { | |
| + bb0: { | |
| + StorageLive(_1); | |
| + _1 = yield_number; | |
| + StorageLive(_2); | |
| + _2 = move _1; | |
| + StorageLive(_3); | |
| + _3 = (); | |
| + _0 = const 64_i32; | |
| + StorageDead(_3); | |
| + StorageDead(_2); | |
| + StorageDead(_1); | |
| return; | |
| } | |
| } | |