Skip to content

Error when pickling tree with UOption or scala-verify? #7128

Closed
@dwijnand

Description

@dwijnand

minimized code

It's not minimal, minimal, but it's two files.

See my branch: https://github.com/dwijnand/scala-unboxed-option/tree/dotty

Stack trace
error when pickling tree def $anonfun(_$3: uoption.UOption[Int]): Boolean =
  uoption.UOptionOps[Int](_$3).isDefined
error when pickling tree {
  def $anonfun(_$3: uoption.UOption[Int]): Boolean =
    uoption.UOptionOps[Int](_$3).isDefined
  closure($anonfun)
}
error when pickling tree uoption.UOptionOps[uoption.UOption[Int]](someSomeInt).map[Boolean](
  {
    def $anonfun(_$3: uoption.UOption[Int]): Boolean =
      uoption.UOptionOps[Int](_$3).isDefined
    closure($anonfun)
  }
)
error when pickling tree uoption.UOptionOps[uoption.UOption[Int]](someSomeInt).map[Boolean](
  {
    def $anonfun(_$3: uoption.UOption[Int]): Boolean =
      uoption.UOptionOps[Int](_$3).isDefined
    closure($anonfun)
  }
).==
error when pickling tree uoption.UOptionOps[uoption.UOption[Int]](someSomeInt).map[Boolean](
  {
    def $anonfun(_$3: uoption.UOption[Int]): Boolean =
      uoption.UOptionOps[Int](_$3).isDefined
    closure($anonfun)
  }
).==(uoption.USome.apply[Boolean](true))
error when pickling tree val value: Boolean =
  uoption.UOptionOps[uoption.UOption[Int]](someSomeInt).map[Boolean](
    {
      def $anonfun(_$3: uoption.UOption[Int]): Boolean =
        uoption.UOptionOps[Int](_$3).isDefined
      closure($anonfun)
    }
  ).==(uoption.USome.apply[Boolean](true))

... etc etc for a large number of big trees ...

java.lang.AssertionError: assertion failed: method $anonfun while compiling /d/scala-unboxed-option/src/test/scala/uoption/test/UOptionTest.scala
[info] exception occurred while compiling /d/scala-unboxed-option/src/test/scala/uoption/test/UOptionTest.scala
[error] ## Exception when compiling 1 sources to /d/scala-unboxed-option/.jvm/target/scala-0.17/test-classes
[error] assertion failed: method $anonfun
[error] dotty.DottyPredef$.assertFail(DottyPredef.scala:16)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleDef(TreePickler.scala:297)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:503)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$38$$anonfun$1(TreePickler.scala:421)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$8(TreePickler.scala:421)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:421)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$36$$anonfun$1(TreePickler.scala:380)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$2(TreePickler.scala:380)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:381)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:370)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$2(TreePickler.scala:379)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:381)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTreeUnlessEmpty(TreePickler.scala:294)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleDef$$anonfun$2(TreePickler.scala:307)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleDef(TreePickler.scala:309)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:494)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$42$$anonfun$1(TreePickler.scala:470)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$18(TreePickler.scala:470)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:472)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$36$$anonfun$1(TreePickler.scala:380)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$2(TreePickler.scala:380)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:381)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$2(TreePickler.scala:379)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:381)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$8(TreePickler.scala:421)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:421)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$36$$anonfun$1(TreePickler.scala:380)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$2(TreePickler.scala:380)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:381)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleStats$$anonfun$2(TreePickler.scala:328)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleStats(TreePickler.scala:328)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$25(TreePickler.scala:529)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:530)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleDef$$anonfun$2(TreePickler.scala:304)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleDef(TreePickler.scala:309)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:505)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleStats$$anonfun$2(TreePickler.scala:328)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleStats(TreePickler.scala:328)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$27(TreePickler.scala:540)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:44)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:540)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickle$$anonfun$1(TreePickler.scala:694)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickle(TreePickler.scala:694)
[error] dotty.tools.dotc.transform.Pickler.run$$anonfun$10$$anonfun$8(Pickler.scala:60)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.transform.Pickler.run$$anonfun$2(Pickler.scala:83)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:392)
[error] dotty.tools.dotc.transform.Pickler.run(Pickler.scala:83)
[error] dotty.tools.dotc.core.Phases$Phase.runOn$$anonfun$1(Phases.scala:316)
[error] scala.collection.immutable.List.map(List.scala:286)
[error] dotty.tools.dotc.core.Phases$Phase.runOn(Phases.scala:318)
[error] dotty.tools.dotc.transform.Pickler.runOn(Pickler.scala:87)
[error] dotty.tools.dotc.Run.runPhases$4$$anonfun$4(Run.scala:158)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] dotty.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.IndexedSeqOptimized.foreach(IndexedSeqOptimized.scala:36)
[error] scala.collection.IndexedSeqOptimized.foreach$(IndexedSeqOptimized.scala:33)
[error] scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:198)
[error] dotty.tools.dotc.Run.runPhases$5(Run.scala:170)
[error] dotty.tools.dotc.Run.compileUnits$$anonfun$1(Run.scala:178)
[error] dotty.runtime.function.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
[error] dotty.tools.dotc.util.Stats$.maybeMonitored(Stats.scala:102)
[error] dotty.tools.dotc.Run.compileUnits(Run.scala:185)
[error] dotty.tools.dotc.Run.compileSources(Run.scala:120)
[error] dotty.tools.dotc.Run.compile(Run.scala:104)
[error] dotty.tools.dotc.Driver.doCompile(Driver.scala:34)
[error] dotty.tools.dotc.Driver.process(Driver.scala:172)
[error] dotty.tools.dotc.Main.process(Main.scala)
[error] xsbt.CachedCompilerImpl.run(CachedCompilerImpl.java:69)
[error] xsbt.CompilerInterface.run(CompilerInterface.java:41)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions