Skip to content

6.2: [MoveOnly] Fix consumption of opened existentials. #81044

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Apr 24, 2025

Conversation

nate-chandler
Copy link
Contributor

@nate-chandler nate-chandler commented Apr 23, 2025

Explanation: During move checking, recognize an existential archetype as a child type of an existential.

The move checkers deal in aggregates and need to handle consumption of children. In some sense, an existential archetype is a child of an existential. Encode this relationship into the utility that walks into child types.
Scope: Affects code involving move-only existentials
Issue: rdar://141279635
Original PR: #81015
Risk: Low.
Testing: Added test.
Reviewer: Andrew Trick ( @atrick )

Before adding a new parameter to the function being called.
Enable walking into `TypeOffsetSizePair`s from an existential into an
archetype.  And set the access kind on `open_existential_addr`
instructions which are the sources of rewritten `copy_addr`s to mutable.

rdar://141279635
@nate-chandler
Copy link
Contributor Author

@swift-ci please test

@nate-chandler nate-chandler marked this pull request as ready for review April 23, 2025 20:37
@nate-chandler nate-chandler requested a review from a team as a code owner April 23, 2025 20:38
@nate-chandler nate-chandler enabled auto-merge April 23, 2025 20:38
@nate-chandler nate-chandler merged commit e2d59bd into swiftlang:release/6.2 Apr 24, 2025
5 checks passed
@nate-chandler nate-chandler deleted the rdar141279635 branch April 24, 2025 22:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants