// MIR for `test2` after Inline fn test2(_1: &dyn X) -> bool { debug x => _1; let mut _0: bool; let mut _2: &dyn X; let mut _3: &dyn X; scope 1 (inlined test) { debug x => _2; } bb0: { StorageLive(_2); StorageLive(_3); _3 = &(*_1); _2 = move _3 as &dyn X (PointerCoercion(Unsize)); StorageDead(_3); _0 = ::y(move _2) -> [return: bb1, unwind unreachable]; } bb1: { StorageDead(_2); return; } }