-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[5.1][ConstraintSystem] Use lightweight conformance check in determining w… #25384
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
Conversation
@swift-ci please test |
Build failed |
Build failed |
…hether literal could be initialized via coercion Currently logic to transform call into coercion uses `conformsToProtocol` to validate that type conforms to one of the ExpressibleBy*Literal protocols. That function doesn't handle unbound generic parameters and would result in an infinite loop or a crash when not all of the generic parameters were explicitly specified for one of the types in the chain e.g. `A.B(42)` where `A` has at least one generic parameter. Resolves: rdar://problem/50007727 (cherry picked from commit a80fa91)
@swift-ci please test |
Build failed |
@swift-ci please test |
Build failed |
@swift-ci please test Linux platform |
Build failed |
@swift-ci please test macOS platform |
There was an unrelated crash In LLDB... |
Build failed |
@swift-ci please test macOS platform |
Build failed |
@swift-ci please test macOS platform |
…hether literal could be initialized via coercion
Currently logic to transform call into coercion uses
conformsToProtocol
to validate that type conforms to one of the ExpressibleBy*Literal protocols.
That function doesn't handle unbound generic parameters and would result in
an infinite loop or a crash when not all of the generic parameters were
explicitly specified for one of the types in the chain e.g.
A.B(42)
where
A
has at least one generic parameter.Resolves: rdar://problem/50007727
(cherry picked from commit a80fa91)