2020-09-13 14:04:45 +00:00
|
|
|
- // MIR for `cannot_opt_generic` before RemoveUnneededDrops
|
|
|
|
+ // MIR for `cannot_opt_generic` after RemoveUnneededDrops
|
|
|
|
|
|
|
|
fn cannot_opt_generic(_1: T) -> () {
|
2023-06-06 13:47:00 +00:00
|
|
|
debug x => _1;
|
|
|
|
let mut _0: ();
|
|
|
|
let _2: ();
|
|
|
|
let mut _3: T;
|
|
|
|
scope 1 (inlined std::mem::drop::<T>) {
|
2020-09-13 14:04:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bb0: {
|
2023-06-06 13:47:00 +00:00
|
|
|
nop;
|
|
|
|
StorageLive(_3);
|
|
|
|
_3 = move _1;
|
|
|
|
drop(_3) -> [return: bb2, unwind: bb1];
|
2020-09-13 14:04:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bb1 (cleanup): {
|
2023-06-06 13:47:00 +00:00
|
|
|
resume;
|
2020-09-13 14:04:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
bb2: {
|
2023-06-06 13:47:00 +00:00
|
|
|
StorageDead(_3);
|
|
|
|
nop;
|
|
|
|
nop;
|
|
|
|
return;
|
2020-09-13 14:04:45 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|