Skip to content

[4.2] [ConstraintSystem] Attempt to select disjunctions that split constraint systems. #16813

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 2 commits into from
May 24, 2018

Conversation

rudkx
Copy link
Contributor

@rudkx rudkx commented May 24, 2018

When selecting the next disjunction to attempt, try to find one that
is a disjunction of bindings where the type being bound is the
converted-to type in a conversion constraint. Attempting these early
makes it possible to split constraint systems, eliminating exponential
behavior.

Fixes: rdar://problem/40344044
(cherry picked from commit b92649a)

rudkx added 2 commits May 24, 2018 00:42
…nt systems.

When selecting the next disjunction to attempt, try to find one that
is a disjunction of bindings where the type being bound is the
converted-to type in a conversion constraint. Attempting these early
makes it possible to split constraint systems, eliminating exponential
behavior.

Fixes: rdar://problem/40344044
(cherry picked from commit b92649a)
@rudkx rudkx changed the title Rdar40344044 4.2 [ConstraintSystem] Attempt to select disjunctions that split constraint systems. May 24, 2018
@rudkx rudkx changed the title [ConstraintSystem] Attempt to select disjunctions that split constraint systems. [4.2] [ConstraintSystem] Attempt to select disjunctions that split constraint systems. May 24, 2018
@rudkx
Copy link
Contributor Author

rudkx commented May 24, 2018

@swift-ci Please test

@rudkx rudkx merged commit bea2b71 into swiftlang:swift-4.2-branch May 24, 2018
@rudkx rudkx deleted the rdar40344044-4.2 branch May 24, 2018 17:34
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.

1 participant