swift
983eaba6 - [OSSALifetimeCompletion] Handle available boundary

Commit
1 year ago
[OSSALifetimeCompletion] Handle available boundary Not every block in a region which begins with the non-lifetime-ending boundary of a value and ending with unreachable-terminated blocks has the value available. If the unreachable-terminated blocks in this boundary are not available, it is incorrect to insert destroys of the value in them: it is an overconsume on some paths. Previously, however, destroys were simply being inserted at the unreachable. Here, this is fixed by finding the boundary of availability within that region and inserting destroys before the terminators of the blocks on that boundary. rdar://116255254
Author
Committer
Parents
Loading