Skip to content

[ConstraintSystem] Favor resolving closures over any disjunction bind… #29700

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

Conversation

xedin
Copy link
Contributor

@xedin xedin commented Feb 7, 2020

…ing type variables

Fix a case where favoring didn't account for "bound" type variable
being wrapped into optional(s) (disjunctions like that are used for
optional conversions). Doing so makes sure that closure result type
is not bound before the body of the closure is "opened", that's
important because body could provide additional context required
to bind result type e.g. { $0 as? <Type> }.

Resolve: rdar://problem/59208419

…ing type variables

Fix a case where favoring didn't account for "bound" type variable
being wrapped into optional(s) (disjunctions like that are used for
optional conversions). Doing so makes sure that closure result type
is not bound before the body of the closure is "opened", that's
important because body could provide additional context required
to bind result type e.g. `{ $0 as? <Type> }`.

Resolve: rdar://problem/59208419
@xedin xedin requested a review from DougGregor February 7, 2020 08:35
@xedin
Copy link
Contributor Author

xedin commented Feb 7, 2020

@swift-ci please test

@xedin
Copy link
Contributor Author

xedin commented Feb 7, 2020

@swift-ci please test source compatibility

@xedin xedin merged commit d92f7c7 into swiftlang:master Feb 7, 2020
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