Skip to content

AssertionError in scalac when compiling a case class with -Ytyper-debug enabled #12675

Open
@noresttherein

Description

@noresttherein

Reproduction steps

Scala version: 2.13.10

case class CaseClass(field :Int)

Problem

When compiling with -Ytyper-debug:

scalac: Error: assertion failed: (CaseClass,case class CaseClass extends scala.Product with scala.Serializable {
  <caseaccessor> <paramaccessor> private[this] val field: Int = _;
  def <init>(field: Int): CaseClass = {
    super.<init>();
    ()
  }
})
java.lang.AssertionError: assertion failed: (CaseClass,case class CaseClass extends scala.Product with scala.Serializable {
  <caseaccessor> <paramaccessor> private[this] val field: Int = _;
  def <init>(field: Int): CaseClass = {
    super.<init>();
    ()
  }
})
	at scala.reflect.internal.SymbolTable.throwAssertionError(SymbolTable.scala:171)
	at scala.tools.nsc.typechecker.TypersTracking$typingStack$.pop(TypersTracking.scala:98)
	at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6100)
	at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:6125)
	at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$8(Typers.scala:3403)
	at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3403)
	at scala.tools.nsc.typechecker.Typers$Typer.typedPackageDef$1(Typers.scala:5640)
	at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5960)
	at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6047)
	at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.apply(Analyzer.scala:117)
	at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:467)
	at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.run(Analyzer.scala:106)
	at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1530)
	at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1514)
	at scala.tools.nsc.Global$Run.compileSources(Global.scala:1506)
	at scala.tools.nsc.Global$Run.compileFiles(Global.scala:1619)
	at xsbt.CachedCompiler0.run(CompilerBridge.scala:163)
	at xsbt.CachedCompiler0.run(CompilerBridge.scala:134)
	at xsbt.CompilerBridge.run(CompilerBridge.scala:39)
	at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:91)
	at org.jetbrains.jps.incremental.scala.local.IdeaIncrementalCompiler.compile(IdeaIncrementalCompiler.scala:57)
	at org.jetbrains.jps.incremental.scala.local.LocalServer.doCompile(LocalServer.scala:52)
	at org.jetbrains.jps.incremental.scala.local.LocalServer.compile(LocalServer.scala:30)
	at org.jetbrains.jps.incremental.scala.remote.Main$.compileLogic(Main.scala:209)
	at org.jetbrains.jps.incremental.scala.remote.Main$.$anonfun$handleCommand$1(Main.scala:192)
	at org.jetbrains.jps.incremental.scala.remote.Main$.decorated$1(Main.scala:182)
	at org.jetbrains.jps.incremental.scala.remote.Main$.handleCommand(Main.scala:189)
	at org.jetbrains.jps.incremental.scala.remote.Main$.serverLogic(Main.scala:165)
	at org.jetbrains.jps.incremental.scala.remote.Main$.nailMain(Main.scala:105)
	at org.jetbrains.jps.incremental.scala.remote.Main.nailMain(Main.scala)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
	at java.base/java.lang.reflect.Method.invoke(Method.java:578)
	at com.facebook.nailgun.NGSession.runImpl(NGSession.java:312)
	at com.facebook.nailgun.NGSession.run(NGSession.java:198)

Explain how the above behavior isn't what you expected.
Do I have to?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions