You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue below was "fixed" by unsealing the Proof class. This should be reversed ASAP. But, this relies on the core pattern matching problem bring fixed in dotty.
Old:
Unable to Upgrade Scala Version
Unable to upgrade the Scala 3 version in the LISA build. Doing so (to 3.3.1 or higher) results in the compiler crashing due to a stack overflow.
I ran the compilation, taking the config from logs from sbt, as a debug configuration on lamp-epfl/dotty with the recent version (3.4.0-RC1 on main) and managed to locate the crash to when the compiler is working on the file WithTheorems.scala in lisa-utils.
The crash has at least existed since before the recent major Types updates, among others, so I don't expect it's related to those.
Debug information at the call sites was not the most helpful, as it seems some information has been erased already. The function making repeated calls, minus at compiler/src/dotty/tools/dotc/transform/patmat/Space.scala:236 seems to compute the difference of two sum types, so it may have something to do with our use of those.
The types in question Edit: see below
In any case, more investigation is required to isolate the issue, and hopefully file a report on the dotty repo once we have a better idea.
Edit: with some more targeted printing of types, these are some of the types seen towards teh end of the overflow:
Seems to be a problem with the way we declare an InnerProof inside Proof as extending it. Pattern match exhaustion checking seems to fail. Minimized code for reproduction:
sealedtraitA:classBextendsAdefcompute(a: A):Boolean=
a matchcaseb: A#B=>true
New:
Issue below was "fixed" by unsealing the
Proof
class. This should be reversed ASAP. But, this relies on the core pattern matching problem bring fixed in dotty.Old:
Unable to Upgrade Scala Version
Unable to upgrade the Scala 3 version in the LISA build. Doing so (to 3.3.1 or higher) results in the compiler crashing due to a stack overflow.
and some repetition...
I ran the compilation, taking the config from logs from
sbt
, as a debug configuration on lamp-epfl/dotty with the recent version (3.4.0-RC1 on main) and managed to locate the crash to when the compiler is working on the file WithTheorems.scala inlisa-utils
.The crash has at least existed since before the recent major Types updates, among others, so I don't expect it's related to those.
Debug information at the call sites was not the most helpful, as it seems some information has been erased already. The function making repeated calls,
minus
atcompiler/src/dotty/tools/dotc/transform/patmat/Space.scala:236
seems to compute the difference of two sum types, so it may have something to do with our use of those.The types in question Edit: see below
In any case, more investigation is required to isolate the issue, and hopefully file a report on the dotty repo once we have a better idea.
Edit: with some more targeted printing of types, these are some of the types seen towards teh end of the overflow:
The text was updated successfully, but these errors were encountered: