Closed
Description
trait O[T] extends java.util.Comparator[T] // Comparator has a method `default Comparator<T> reversed`
class C extends O[String] {
def compare(a: String, b: String) = 0
}
crashes the compiler with -Xgen-mixin-forwarders
:
java.lang.AssertionError: assertion failed:
cannot invokespecial java/util/Comparator.reversed, the interface is not a direct parent.
at scala.tools.nsc.Global.assert(Global.scala:229)
at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genCallMethod(BCodeBodyBuilder.scala:1089)
at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genApply(BCodeBodyBuilder.scala:584)
at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoad(BCodeBodyBuilder.scala:298)
at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.emitNormalMethodBody$1(BCodeSkelBuilder.scala:604)
at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.genDefDef(BCodeSkelBuilder.scala:636)
Metadata
Metadata
Assignees
Labels
No labels