Skip to content

Conversation

@xedin
Copy link
Contributor

@xedin xedin commented Aug 6, 2021

Cherry-pick of #38770


  • Explanation:

Instead of crashing when constraint system ends up in an invalid state because
of a bug in the solver, let's simply fail the step and let type-checker produce a
fallback diagnostic, this is much more user-friendly in a way that it points out
exactly what happened, where it happened and asks to file a bug.

  • Scope: Invalid code that ends up putting constraint system into an invalid state e.g. are some active/inactive constraints are left in the system unsolved.

  • Main Branch PR: [ConstraintSystem] Relax the left-over information check in ComponentStep #38770

  • Resolves: rdar://56167233

  • Risk: Low

  • Reviewed By: @hborla @hamishknight

  • Testing: Tested this manually by reverting PRs that fixed abort in ComponentStep::take, unfortunately it's not practical to add unit tests for this issue because we'd rather fix every instance of this issue right away.

Resolves: rdar://56167233

…tStep`

Instead of crashing in release builds, let's simply fail the
step and let type-checker produce a fallback diagnostic.

Resolves: rdar://56167233
@xedin xedin added the r5.5 label Aug 6, 2021
@xedin xedin requested a review from a team as a code owner August 6, 2021 20:47
@xedin
Copy link
Contributor Author

xedin commented Aug 6, 2021

@swift-ci please test

@xedin
Copy link
Contributor Author

xedin commented Aug 6, 2021

@swift-ci please nominate

@xedin xedin merged commit 5c1a527 into swiftlang:release/5.5 Aug 7, 2021
@AnthonyLatsis AnthonyLatsis added 🍒 release cherry pick Flag: Release branch cherry picks swift 5.5 labels Jan 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🍒 release cherry pick Flag: Release branch cherry picks swift 5.5

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants