-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[CS][Experiment] Re-activate all inactive constraints #30487
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 compiler performance |
This comment has been minimized.
This comment has been minimized.
b228d2a
to
7438ba3
Compare
@swift-ci please test compiler performance |
wat |
7438ba3
to
806056d
Compare
Summary for master fullUnexpected test results, excluded stats for RxCocoa, SwifterSwift, Base64CoderSwiftUI Regressions found (see below) Debug-batchdebug-batch briefRegressed (1)
Improved (0)
Unchanged (delta < 1.0% or delta < 100.0ms) (2)
debug-batch detailedRegressed (5)
Improved (13)
Unchanged (delta < 1.0% or delta < 100.0ms) (213)
Releaserelease briefRegressed (1)
Improved (0)
Unchanged (delta < 1.0% or delta < 100.0ms) (2)
release detailedRegressed (1)
Improved (0)
Unchanged (delta < 1.0% or delta < 100.0ms) (16)
|
806056d
to
d9a895b
Compare
@swift-ci please test compiler performance |
Summary for master fullUnexpected test results, excluded stats for RxCocoa, SwifterSwift, Base64CoderSwiftUI Regressions found (see below) Debug-batchdebug-batch briefRegressed (0)
Improved (0)
Unchanged (delta < 1.0% or delta < 100.0ms) (3)
debug-batch detailedRegressed (2)
Improved (5)
Unchanged (delta < 1.0% or delta < 100.0ms) (225)
Releaserelease briefRegressed (0)
Improved (0)
Unchanged (delta < 1.0% or delta < 100.0ms) (3)
release detailedRegressed (0)
Improved (1)
Unchanged (delta < 1.0% or delta < 100.0ms) (16)
|
d9a895b
to
e7f114a
Compare
@swift-ci please test compiler performance |
This comment has been minimized.
This comment has been minimized.
Currently `simplifyAppliedOverloads` depends on the order in which constraints are simplified, specifically that a lookup constraint for a function gets simplified before the applicable function constraint. This happens to work out just fine today with the order in which we re-activate constraints, but I'm planning on changing that order. This commit changes the logic such that it it's no longer affected by the order in which constraints are simplified. We'll now run it when either an applicable function constraint is added, or a new bind overload disjunction is added. This also means we no longer need to run it potentially multiple times when simplifying the applicable fn.
Previously we could prematurely attempt to perform a bind of class metatypes without checking for subtyping. Tweak the logic to not perform a bind if can't prove that we're dealing with non-class types.
This fixes a correctness issue with the old implementation where we could fail to re-activate a coercion constraint, and then let invalid code get past Sema, causing either miscompiles or crashes later down the pipeline.
…aph nodes." This reverts commit cf1732c.
Previously we could allow some invalid coercions to sneak past Sema. In most cases these would either cause crashes later down the pipeline or miscompiles. However, for coercions between collections, we emitted somewhat reasonable code that performed a force cast. This commit aims to preserve compatibility with those collection coercions that previously compiled, and emits a warning telling the user to use either 'as?' or 'as!' instead.
e7f114a
to
3eb6ac1
Compare
@swift-ci please test compiler performance |
Summary for master fullUnexpected test results, excluded stats for RxCocoa, SwifterSwift, Base64CoderSwiftUI Regressions found (see below) Debug-batchdebug-batch briefRegressed (0)
Improved (0)
Unchanged (delta < 1.0% or delta < 100.0ms) (3)
debug-batch detailedRegressed (2)
Improved (5)
Unchanged (delta < 1.0% or delta < 100.0ms) (226)
Releaserelease briefRegressed (0)
Improved (0)
Unchanged (delta < 1.0% or delta < 100.0ms) (3)
release detailedRegressed (0)
Improved (1)
Unchanged (delta < 1.0% or delta < 100.0ms) (16)
|
No description provided.