Skip to content

[5.3][ConstraintSystem] Don't propagate holes through supertype inference #32490

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 22, 2020

Conversation

xedin
Copy link
Contributor

@xedin xedin commented Jun 22, 2020

Cherry-pick of #32449


  • Explanation:

Disallow holes to be inferred as supertype bindings while inferring
bindings from other type variables (based on transitivity of subtype
conversions), otherwise it would be possible to record a hole without
recording associated fix.

  • Scope: Affects situations in diagnostic mode where there is a subtype relationship between two type variables and supertype has a hole as one of the potential bindings.

  • Resolves: rdar://problem/64368545

  • Risk: Very low

  • Testing: Added regression tests

  • Reviewer: @DougGregor

Resolves: rdar://problem/64368545
(cherry picked from commit 2283208)

Disallow holes to be inferred as supertype bindings  while inferring
bindings from other type variables (based on transitivity of subtype
conversions), otherwise it would be possible to record a hole without
recording associated fix.

Resolves: rdar://problem/64368545
(cherry picked from commit 2283208)
@xedin xedin requested a review from a team as a code owner June 22, 2020 07:22
@xedin
Copy link
Contributor Author

xedin commented Jun 22, 2020

@swift-ci please test

@xedin xedin added the r5.3 label Jun 22, 2020
@xedin xedin merged commit 703f2c3 into swiftlang:release/5.3 Jun 22, 2020
@AnthonyLatsis AnthonyLatsis added swift 5.3 🍒 release cherry pick Flag: Release branch cherry picks labels Jan 8, 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.3
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants