Skip to content

Compiler crashes when illegal signature of applyDynamic is used #24037

@road21

Description

@road21

Compiler version

3.7.3
3.7.2

Minimized code

val s = new Selectable: type Fields = (f: Int) def selectDynamic(f: String): Any = 1 def applyDynamic(f: String): Any = 1 s.f

Output (click arrow to expand)

Error: Encountered a StackOverflowError coming from the compiler. You might need to restart your Bloop build server: dotty.tools.dotc.core.TypeOps$.simplify(TypeOps.scala:145) dotty.tools.dotc.core.TypeOps$.simplify(TypeOps.scala:138) dotty.tools.dotc.core.Types$Type.simplified(Types.scala:2122) dotty.tools.dotc.typer.Typer.simplify(Typer.scala:3778) dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:3762) dotty.tools.dotc.typer.Typer.typed(Typer.scala:3836) dotty.tools.dotc.typer.Typer.typed(Typer.scala:3841) dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3952) dotty.tools.dotc.typer.Typer.typeSelectOnTerm$1(Typer.scala:1058) dotty.tools.dotc.typer.Typer.typedSelect(Typer.scala:1112) dotty.tools.dotc.typer.Typer.typedNamed$1(Typer.scala:3646) dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:3758) dotty.tools.dotc.typer.Typer.typed(Typer.scala:3836) dotty.tools.dotc.typer.Typer.typed(Typer.scala:3841) dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3952) dotty.tools.dotc.typer.Applications.realApply$1(Applications.scala:1109) dotty.tools.dotc.typer.Applications.typedApply(Applications.scala:1336) dotty.tools.dotc.typer.Applications.typedApply$(Applications.scala:470) dotty.tools.dotc.typer.Typer.typedApply(Typer.scala:155) dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:3671) dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:3759) dotty.tools.dotc.typer.Typer.typed(Typer.scala:3836) dotty.tools.dotc.typer.Typer.typed(Typer.scala:3841) dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3952)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions