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
java.lang.StackOverflowErrorwhile running pickler on C:\opt\ue\bigCaseClass.sc
java.lang.StackOverflowErrorwhile compiling C:\opt\ue\bigCaseClass.sc
Exception in thread "main" java.lang.StackOverflowError
at dotty.tools.dotc.core.Contexts$ContextBase.erasurePhase(Contexts.scala:828)
at dotty.tools.dotc.core.Phases$.erasurePhase(Phases.scala:452)
at dotty.tools.dotc.core.Types$NamedType.sigFromDenot(Types.scala:2256)
at dotty.tools.dotc.core.Types$NamedType.computeSignature$1(Types.scala:2227)
at dotty.tools.dotc.core.Types$NamedType.signature(Types.scala:2232)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:404)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$2(TreePickler.scala:420)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$adapted$2(TreePickler.scala:422)
at scala.Function0.apply$mcV$sp(Function0.scala:42)
at dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:58)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:422)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$3(TreePickler.scala:432)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$adapted$3(TreePickler.scala:434)
at scala.Function0.apply$mcV$sp(Function0.scala:42)
at dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:58)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:434)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$2(TreePickler.scala:420)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$adapted$2(TreePickler.scala:422)
at scala.Function0.apply$mcV$sp(Function0.scala:42)
at dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:58)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:422)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$3(TreePickler.scala:432)
at dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$adapted$3(TreePickler.scala:434)
at scala.Function0.apply$mcV$sp(Function0.scala:42)
[1000 lines deleted]
An attempt to represent a database table with 254 columns as a case class.
More than 194 fields triggers a compile error.
If the last line is commented out, compilation succeeds.
The original error case scala#16500 showed an example of deeply nested code
which blew up TreePickler with a StackOverflow. We now handle this situation
and provide better error diagnostics
- point to the closes enclosing definition that caused the SO when pickled
- suggest to increase the stack size with -Xss
The original error case scala#16500 showed an example of deeply nested code
which blew up TreePickler with a StackOverflow. We now handle this situation
and provide better error diagnostics
- point to the closes enclosing definition that caused the SO when pickled
- suggest to increase the stack size with -Xss
Compiler version
Scala code runner version 3.2.2-RC1 -- Copyright 2002-2022, LAMP/EPFL
Minimized code
Output (click arrow to expand)
An attempt to represent a database table with 254 columns as a
case class
.More than 194 fields triggers a compile error.
If the last line is commented out, compilation succeeds.
Could the size of
symRefs
be a factor? compiler/src/dotty/tools/dotc/core/tasty/TreePickler.scalaThe text was updated successfully, but these errors were encountered: