-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[5.1] [ConstraintSystem] Fix crash on function conversion reliant on conditional conformance #25739
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
[5.1] [ConstraintSystem] Fix crash on function conversion reliant on conditional conformance #25739
Conversation
cc @xedin |
@theblixguy Could you please squash everything into a single commit? |
… on conditional conformance
@xedin Done! |
@swift-ci please test |
Build failed |
Build failed |
@theblixguy Looks like there are 2 tests which trigger exactly the same assert now this is trying to fix, bad squash? :) |
Oh no! I’ll fix this in a moment. |
Wait this has the same changes as the other PR 🤔 |
Maybe the difference is that 5.1 doesn't have all of the changes that master has. |
But it kind of seems unlikely in this case, because assert in old |
It seems like there are still some uses of summaryFlags=0 left on this branch. |
@xedin should be fixed now. |
@swift-ci please test |
Build failed |
Build failed |
Hmm getting an unrelated assertion now:
|
@hamishknight seems like you were the last person who touched getDeclRef in commit 894a1e5 (PR #24826) and got rid of that assertion. I think we need your PR changes in the 5.1 branch as well. I can either cherry-pick your commit into this branch or you can open a new PR and once your changes have been merged, we can re-run the CI to verify if this issue is fixed. |
@theblixguy We need to figure out how to reduce the scope of the changes required, otherwise it wouldn't be able to land in 5.1 |
Hmm Hamish’s PR is pretty small and fixes two bugs in the process. Let me try adjusting getDeclRef only and see if the tests pass locally on my machine. |
Alright, I'll try to look at his PR again tonight and get it in to 5.1 |
Sounds good! |
@theblixguy looks like you'd have to resolve merge conflict because I can re-run CI. |
@swift-ci please test |
Sorry I messed up when fixing the merge conflict! Could you re run the CI? Thank you! |
@swift-ci please test |
Build failed |
Build failed |
Nice it seems like @hamishknight’s PR solved the problem 🎉 |
This PR fixes a compiler crasher related to a function conversion reliant on conditional conformance. Example:
Resolves SR-10992.
Cherry pick of #25721.