Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

StackOverflowError when using conditional and named parameters #21535

Closed
theosotr opened this issue Sep 4, 2024 · 0 comments · Fixed by #21587
Closed

StackOverflowError when using conditional and named parameters #21535

theosotr opened this issue Sep 4, 2024 · 0 comments · Fixed by #21587

Comments

@theosotr
Copy link

theosotr commented Sep 4, 2024

Compiler version

3.5.0

Minimized code

def test() = {
  val p = 10.toShort
  (if (true) then
    new A(66)
  else
    m1()
  ).m2(p1 = p);

}

def m1(): A[Short] = new A(10)

class A[D](var f: D) {

  def m2(p1: D = f, p2: D = f): Unit = {}
}

Output (click arrow to expand)

  Exception while compiling program.scala

  An unhandled exception was thrown in the compiler.
  Please file a crash report here:
  https://github.com/scala/scala3/issues/new/choose
  For non-enriched exceptions, compile with -Xno-enrich-error-messages.

     while compiling: <no file>
        during phase: parser
                mode: Mode()
     library version: version 2.13.14
    compiler version: version 3.5.0
            settings: 

Exception in thread "main" java.lang.StackOverflowError
	at dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:216)
	at dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:224)
	at dotty.tools.dotc.core.TypeComparer.isSub(TypeComparer.scala:226)
	at dotty.tools.dotc.core.ConstraintHandling.op$proxy3$1(ConstraintHandling.scala:471)
	at dotty.tools.dotc.core.ConstraintHandling.isSubTypeWhenFrozen(ConstraintHandling.scala:471)
	at dotty.tools.dotc.core.ConstraintHandling.isSubTypeWhenFrozen$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.isSubTypeWhenFrozen(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.isSubType(ConstraintHandling.scala:455)
	at dotty.tools.dotc.core.ConstraintHandling.isSubType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.TypeComparer.isSubOf$1(TypeComparer.scala:2542)
	at dotty.tools.dotc.core.TypeComparer.dropIfSub(TypeComparer.scala:2550)
	at dotty.tools.dotc.core.TypeComparer.mergedLub$1(TypeComparer.scala:2442)
	at dotty.tools.dotc.core.TypeComparer.lub(TypeComparer.scala:2447)
	at dotty.tools.dotc.core.TypeComparer$.lub(TypeComparer.scala:3217)
	at dotty.tools.dotc.core.TypeOps$.simplify(TypeOps.scala:161)
	at dotty.tools.dotc.core.TypeOps$.simplify(TypeOps.scala:172)
	at dotty.tools.dotc.core.Types$Type.simplified(Types.scala:2106)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:713)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType(ConstraintHandling.scala:723)
	at dotty.tools.dotc.core.ConstraintHandling.instanceType$(ConstraintHandling.scala:29)
	at dotty.tools.dotc.core.TypeComparer.instanceType(TypeComparer.scala:30)
@theosotr theosotr added itype:bug itype:crash stat:needs triage Every issue needs to have an "area" and "itype" label labels Sep 4, 2024
@Gedochao Gedochao added area:parser and removed stat:needs triage Every issue needs to have an "area" and "itype" label labels Sep 4, 2024
odersky added a commit to dotty-staging/dotty that referenced this issue Sep 13, 2024
We could get an indirect recursion going through a singleton type before.

Fixes scala#21535
smarter added a commit that referenced this issue Sep 13, 2024
We could get an indirect recursion going through a singleton type
before.

Fixes #21535
@WojciechMazur WojciechMazur added this to the 3.6.0 milestone Oct 8, 2024
WojciechMazur pushed a commit that referenced this issue Dec 3, 2024
We could get an indirect recursion going through a singleton type before.

Fixes #21535

[Cherry-picked d0ea3b0]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants