Skip to content

[5.9][ConstraintSystem] Adjust the way pack parameters are opened #66927

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 1 commit into from
Jun 26, 2023

Conversation

xedin
Copy link
Contributor

@xedin xedin commented Jun 26, 2023

Cherry-pick of #66910


Resolves: #66095
(cherry picked from commit 2227930)

Although variadic type is declared without `repeat` each of
its generic arguments is supposed to be a PackType which is
modeled in the interface type as `Pack{repeat ...}`. When
reference to such a type is opened by the constraint solver
we need to drop the Pack{repeat ...} structure because the
type variable would represent a pack type so `S<each T>`
is opened as `S<$T0>` instead of `S<Pack{repeat $T0}>`.

Resolves: swiftlang#66095
(cherry picked from commit 2227930)
@xedin xedin added 🍒 release cherry pick Flag: Release branch cherry picks swift 5.9 labels Jun 26, 2023
@xedin xedin requested a review from hborla June 26, 2023 15:58
@xedin xedin requested a review from a team as a code owner June 26, 2023 15:58
@xedin
Copy link
Contributor Author

xedin commented Jun 26, 2023

@swift-ci please test

@xedin xedin merged commit 517c487 into swiftlang:release/5.9 Jun 26, 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 swift 5.9
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Compiler crash when forwarding variadic type parameter pack to initializer
2 participants