Skip to content

RuntimeError in backend / erasure #5006

Closed
@sir-wabbit

Description

@sir-wabbit
object i0 {
  // Adding anything in front of asInstanceOf,
  // i0 or this, makes the error go away.
  def i1: Int = asInstanceOf[Int].toInt
}
Erasure should have added an unboxing operation to prevent this cast. Tree: TypeApply(Ident(asInstanceOf),List(TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Int)]))
exception occurred while compiling RE-96bd93de803119f21ab5d429b0ce0793869d86c5.scala
Exception in thread "main" java.lang.RuntimeException: Erasure should have added an unboxing operation to prevent this cast. Tree: TypeApply(Ident(asInstanceOf),List(TypeTree[TypeRef(ThisType(TypeRef(NoPrefix,module class scala)),class Int)]))
	at dotty.tools.backend.jvm.DottyBackendInterface.abort(DottyBackendInterface.scala:394)
	at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genTypeApply(BCodeBodyBuilder.scala:599)
	at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoad(BCodeBodyBuilder.scala:428)
	at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoad(BCodeBodyBuilder.scala:268)
	at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genPrimitiveOp(BCodeBodyBuilder.scala:257)
	at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genApply(BCodeBodyBuilder.scala:711)
	at scala.tools.nsc.backend.jvm.BCodeBodyBuilder$PlainBodyBuilder.genLoad(BCodeBodyBuilder.scala:337)
	at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.emitNormalMethodBody$1(BCodeSkelBuilder.scala:602)
	at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.genDefDef(BCodeSkelBuilder.scala:635)
	at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.gen(BCodeSkelBuilder.scala:506)
	at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.gen$$anonfun$1(BCodeSkelBuilder.scala:508)
	at scala.compat.java8.JProcedure1.apply(JProcedure1.java:18)
	at scala.compat.java8.JProcedure1.apply(JProcedure1.java:10)
	at scala.collection.immutable.List.foreach(List.scala:389)
	at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.gen(BCodeSkelBuilder.scala:508)
	at scala.tools.nsc.backend.jvm.BCodeSkelBuilder$PlainSkelBuilder.genPlainClass(BCodeSkelBuilder.scala:116)
	at dotty.tools.backend.jvm.GenBCodePipeline$Worker1.visit(GenBCode.scala:213)
	at dotty.tools.backend.jvm.GenBCodePipeline$Worker1.run(GenBCode.scala:179)
	at dotty.tools.backend.jvm.GenBCodePipeline.buildAndSendToDisk(GenBCode.scala:419)
	at dotty.tools.backend.jvm.GenBCodePipeline.run(GenBCode.scala:385)
	at dotty.tools.backend.jvm.GenBCode.run(GenBCode.scala:53)

RE-96bd93de803119f21ab5d429b0ce0793869d86c5

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions