Closed
Description
Based on OpenCB failures in multiple projects:
akka/akka-http
- Open CB logsapache/pekko-http
- Open CB logskasiamarek/tyre-scala
- Open CB logslampepfl/gears
(reproducer below) - Open CB logssoftwaremill/sttp
- Open CB logs
Compiler version
Last good release: 3.7.0-RC1-bin-20250119-bd699fc-NIGHTLY
First bad release: 3.7.0-RC1-bin-20250120-db23c08-NIGHTLY
The first bad commit could be any of:
fe2e6e9
08442e8
Minimized code
trait Source[+T]:
def onComplete(): Unit
trait Listener[-T]:
val lock: Listener.ListenerLock | Null
object Listener:
trait ListenerLock:
def acquire(): Unit
object Source:
private def race[T, U](sources: Source[U]*): Source[T] =
new Source[T] {
def onComplete(): Unit = {
new Listener {
override val lock = new Listener.ListenerLock {
override def acquire() = println(sources)
}
}
}
}
Output (click arrow to expand)
java.util.NoSuchElementException: key not found: val sources$2
at scala.collection.MapOps.default(Map.scala:289)
at scala.collection.MapOps.default$(Map.scala:288)
at scala.collection.AbstractMap.default(Map.scala:420)
at scala.collection.mutable.HashMap.apply(HashMap.scala:440)
at dotty.tools.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder$locals$.load(BCodeSkelBuilder.scala:583)
at dotty.tools.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoadTo(BCodeBodyBuilder.scala:439)
at dotty.tools.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoad(BCodeBodyBuilder.scala:303)
at dotty.tools.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.loop$1(BCodeBodyBuilder.scala:1209)
at dotty.tools.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoadArguments(BCodeBodyBuilder.scala:1216)
at dotty.tools.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genApply(BCodeBodyBuilder.scala:835)
at dotty.tools.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoadTo(BCodeBodyBuilder.scala:385)
at dotty.tools.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.emitNormalMethodBody$1(BCodeSkelBuilder.scala:899)
at dotty.tools.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.genDefDef(BCodeSkelBuilder.scala:922)
at dotty.tools.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.gen(BCodeSkelBuilder.scala:699)
at dotty.tools.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.gen$$anonfun$1(BCodeSkelBuilder.scala:705)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
at scala.collection.immutable.List.foreach(List.scala:334)
at dotty.tools.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.gen(BCodeSkelBuilder.scala:705)
at dotty.tools.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.genPlainClass(BCodeSkelBuilder.scala:293)
at dotty.tools.backend.jvm.CodeGen.genClass(CodeGen.scala:161)
at dotty.tools.backend.jvm.CodeGen.genClassDef$1(CodeGen.scala:62)
at dotty.tools.backend.jvm.CodeGen.genClassDefs$1(CodeGen.scala:118)
at dotty.tools.backend.jvm.CodeGen.genClassDefs$1$$anonfun$1(CodeGen.scala:116)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
at scala.collection.immutable.List.foreach(List.scala:334)
at dotty.tools.backend.jvm.CodeGen.genClassDefs$1(CodeGen.scala:116)
at dotty.tools.backend.jvm.CodeGen.genUnit(CodeGen.scala:121)
at dotty.tools.backend.jvm.GenBCode.run(GenBCode.scala:90)
at dotty.tools.dotc.core.Phases$Phase.runOn$$anonfun$1(Phases.scala:383)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
at scala.collection.immutable.List.foreach(List.scala:334)
at dotty.tools.dotc.core.Phases$Phase.runOn(Phases.scala:376)
at dotty.tools.backend.jvm.GenBCode.runOn(GenBCode.scala:98)
at dotty.tools.dotc.Run.runPhases$1$$anonfun$1(Run.scala:345)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
at scala.collection.ArrayOps$.foreach$extension(ArrayOps.scala:1324)
at dotty.tools.dotc.Run.runPhases$1(Run.scala:338)
at dotty.tools.dotc.Run.compileUnits$$anonfun$1(Run.scala:385)
at dotty.tools.dotc.Run.compileUnits$$anonfun$adapted$1(Run.scala:397)
at dotty.tools.dotc.util.Stats$.maybeMonitored(Stats.scala:69)
at dotty.tools.dotc.Run.compileUnits(Run.scala:397)
at dotty.tools.dotc.Run.compileSources(Run.scala:284)
at dotty.tools.dotc.Run.compile(Run.scala:269)
at dotty.tools.dotc.Driver.doCompile(Driver.scala:37)
at dotty.tools.dotc.Driver.process(Driver.scala:201)
at dotty.tools.dotc.Driver.process(Driver.scala:169)
at dotty.tools.dotc.Driver.process(Driver.scala:181)
at dotty.tools.dotc.Driver.main(Driver.scala:211)
at dotty.tools.dotc.Main.main(Main.scala)
Error while emitting /Users/wmazur/projects/scala/sandbox/test.scala
key not found: val sources$2
1 error found
Compilation failed