diff options
| author | Tomasz Miąsko <tomasz.miasko@gmail.com> | 2023-11-19 00:00:00 +0000 | 
|---|---|---|
| committer | Tomasz Miąsko <tomasz.miasko@gmail.com> | 2023-11-20 09:27:30 +0100 | 
| commit | 1be1c2ebcfd0ab10cbf001cc5d2471686a98aded (patch) | |
| tree | c4d0881a88e6ca1b40e6cc8795945ba9418dcd3b /tests/codegen/slice-iter-len-eq-zero.rs | |
| parent | 525a64fa8135bc9e8c1e84ac649bf366e05c12b0 (diff) | |
| download | rust-1be1c2ebcfd0ab10cbf001cc5d2471686a98aded.tar.gz rust-1be1c2ebcfd0ab10cbf001cc5d2471686a98aded.zip | |
Fix insertion of statements to be executed along return edge in inlining
Inlining creates additional statements to be executed along the return edge: an assignment to the destination, storage end for temporaries. Previously those statements where inserted directly into a call target, but this is incorrect when the target has other predecessors. Avoid the issue by creating a new dedicated block for those statements. When the block happens to be redundant it will be removed by CFG simplification that follows inlining. Fixes #117355
Diffstat (limited to 'tests/codegen/slice-iter-len-eq-zero.rs')
0 files changed, 0 insertions, 0 deletions
