Skip to content

Conversation

@jckarter
Copy link
Contributor

@jckarter jckarter commented Apr 2, 2023

Teach the checker that the thing being checked is supposed to be uninitialized at the mark_must_check point so that we don't put a destroy_addr there.

The way this is implemented is that we always initially add assignable_but_not_consumable but in DI once we discover that the assign we are guarding is an init, we convert the assignable to its initable variant.

Main PR: #64690

rdar://106525988

…able.

This is used to teach the checker that the thing being checked is supposed to be
uninitialized at the mark_must_check point so that we don't put a destroy_addr
there.

The way this is implemented is that we always initially add
assignable_but_not_consumable but in DI once we discover that the assign we are
guarding is an init, we convert the assignable to its initable variant.

rdar://106525988
@jckarter jckarter requested a review from a team as a code owner April 2, 2023 15:43
@jckarter
Copy link
Contributor Author

jckarter commented Apr 2, 2023

@swift-ci Please test

@jckarter jckarter merged commit 953b9b0 into swiftlang:release/5.9 Apr 3, 2023
@AnthonyLatsis AnthonyLatsis added the 🍒 release cherry pick Flag: Release branch cherry picks label May 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🍒 release cherry pick Flag: Release branch cherry picks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants