Skip to content

Conversation

WojciechMazur
Copy link
Contributor

Backports #23665 to the 3.7.4.

PR submitted by the release tooling.
[skip ci]

#23609 triggers an assertion error in TyperState. The relevant
explanation seems to be in ProtoTypes.scala:
```scala
            // To respect the pre-condition of `mergeConstraintWith` and keep
            // `protoTyperState` committable we must ensure that it does not
            // contain any type variable which don't already exist in the passed
            // TyperState. This is achieved by instantiating any such type
            // variable. NOTE: this does not suffice to discard type variables
            // in ancestors of `protoTyperState`, if this situation ever
            // comes up, an assertion in TyperState will trigger and this code
            // will need to be generalized.
```
We should go to the bottom of it and fix the assertion. But before
that's done this PR offers a temporary hack to catch the exception when
it is triggered from a new code path created by PR #23532. This should
fix the regression reported in #23609. We should leave the issue open as
a reminder that we still need a better fix.

Also: handle crash due to missing span in a migration helper.
[Cherry-picked 408298d]
@WojciechMazur WojciechMazur linked an issue Sep 22, 2025 that may be closed by this pull request
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.

AssertionError: assertion failed: end of NoSpan
2 participants