scala3
scala3 copied to clipboard
Crash with dependent types and match type
Compiler version
3.2..0
Minimized code
package perspective.examples
trait crash[ElemLabels <: Tuple] {
type Index = crash.IntIdx
type Gen[A[_]] = IArray[A[Any]]
type Const[A] = [B] =>> A
def tabulateFoldLeft[B](start: B)(f: (B, Index) => B): B = ???
type TupleUnionLub[T <: Tuple, Lub, Acc <: Lub] <: Lub = T match {
case (h & Lub) *: t => TupleUnionLub[t, Lub, Acc | h]
case EmptyTuple => Acc
}
type Names = TupleUnionLub[ElemLabels, String, Nothing]
extension [A[_]](fa: Gen[A])
def indexK(rep: Index): A[rep.X] =
fa(rep.value).asInstanceOf[A[rep.X]]
def nameToIndex[Name <: Names](name: Name): Unit =
val n: Gen[Const[Names]] = ???
val res = tabulateFoldLeft(Nil: List[(Names, Index)]) { (acc, idx) =>
(n.indexK(idx), idx) :: acc
}
}
object crash {
class IntIdx(val value: Int) extends AnyVal {
type X
}
}
Not quite sure what is going on here to be honest. Changing
(n.indexK(idx), idx) :: acc
to
val name = n.indexK(idx)
(name, idx) :: acc
makes it compile fine. Changing the rhs of Names to Tuple.Union[ElemLabels] also makes it work fine. Lastly, changing Index to Index[A] and making use of poly times where needed also works fine.
Output (click arrow to expand)
java.lang.IndexOutOfBoundsException: 1 while compiling D:\DevProjects\Stable\perspective\dotty\examples\src\main\scala\perspective\examples\crash.scala
[error] ## Exception when compiling 4 sources to D:\DevProjects\Stable\perspective\dotty\examples\target\scala-3.2.0\classes
[error] java.lang.IndexOutOfBoundsException: 1
[error] scala.collection.LinearSeqOps.apply(LinearSeq.scala:117)
[error] scala.collection.LinearSeqOps.apply$(LinearSeq.scala:114)
[error] scala.collection.immutable.List.apply(List.scala:79)
[error] dotty.tools.dotc.core.Types$TypeParamRef.copyBoundType(Types.scala:4614)
[error] dotty.tools.dotc.core.Types$TypeParamRef.copyBoundType(Types.scala:4614)
[error] dotty.tools.dotc.core.Substituters$.subst(Substituters.scala:13)
[error] dotty.tools.dotc.core.Substituters$SubstBindingMap.apply(Substituters.scala:165)
[error] dotty.tools.dotc.core.Types$TypeMap.mapOver(Types.scala:5639)
[error] dotty.tools.dotc.core.Substituters$.subst(Substituters.scala:23)
[error] dotty.tools.dotc.core.Types$Type.subst(Types.scala:1777)
[error] dotty.tools.dotc.core.Types$LambdaType.integrate(Types.scala:3496)
[error] dotty.tools.dotc.core.Types$LambdaType.integrate$(Types.scala:3447)
[error] dotty.tools.dotc.core.Types$HKLambda.integrate(Types.scala:3520)
[error] dotty.tools.dotc.core.TypeComparer.$anonfun$2$$anonfun$1(TypeComparer.scala:1007)
[error] scala.collection.immutable.List.map(List.scala:246)
[error] dotty.tools.dotc.core.TypeComparer.$anonfun$2(TypeComparer.scala:1007)
[error] dotty.tools.dotc.core.Types$HKTypeLambda.<init>(Types.scala:3917)
[error] dotty.tools.dotc.core.Types$HKTypeLambda$.apply(Types.scala:4025)
[error] dotty.tools.dotc.core.Types$HKTypeLambda$.apply(Types.scala:4020)
[error] dotty.tools.dotc.core.TypeComparer.compareAppliedTypeParamRef$1(TypeComparer.scala:1009)
[error] dotty.tools.dotc.core.TypeComparer.canInstantiate$2(TypeComparer.scala:1241)
[error] dotty.tools.dotc.core.TypeComparer.compareAppliedType1$1(TypeComparer.scala:1245)
[error] dotty.tools.dotc.core.TypeComparer.fourthTry$1(TypeComparer.scala:809)
[error] dotty.tools.dotc.core.TypeComparer.fallback$2$$anonfun$1(TypeComparer.scala:1173)
[error] scala.Function0.apply$mcZ$sp(Function0.scala:39)
[error] dotty.tools.dotc.core.TypeComparer.necessaryEither(TypeComparer.scala:1738)
[error] dotty.tools.dotc.core.TypeComparer.either(TypeComparer.scala:1617)
[error] dotty.tools.dotc.core.TypeComparer.fallback$2(TypeComparer.scala:1173)
[error] dotty.tools.dotc.core.TypeComparer.compareLower$1(TypeComparer.scala:1189)
[error] dotty.tools.dotc.core.TypeComparer.compareAppliedType2$1(TypeComparer.scala:1213)
[error] dotty.tools.dotc.core.TypeComparer.thirdTry$1(TypeComparer.scala:573)
[error] dotty.tools.dotc.core.TypeComparer.secondTry$1(TypeComparer.scala:506)
[error] dotty.tools.dotc.core.TypeComparer.firstTry$1(TypeComparer.scala:383)
[error] dotty.tools.dotc.core.TypeComparer.recur(TypeComparer.scala:1336)
[error] dotty.tools.dotc.core.TypeComparer.compareAppliedType1$1(TypeComparer.scala:1262)
[error] dotty.tools.dotc.core.TypeComparer.fourthTry$1(TypeComparer.scala:809)
[error] dotty.tools.dotc.core.TypeComparer.fallback$2$$anonfun$1(TypeComparer.scala:1173)
[error] scala.Function0.apply$mcZ$sp(Function0.scala:39)
[error] dotty.tools.dotc.core.TypeComparer.necessaryEither(TypeComparer.scala:1738)
[error] dotty.tools.dotc.core.TypeComparer.either(TypeComparer.scala:1617)
[error] dotty.tools.dotc.core.TypeComparer.fallback$2(TypeComparer.scala:1173)
[error] dotty.tools.dotc.core.TypeComparer.compareLower$1(TypeComparer.scala:1189)
[error] dotty.tools.dotc.core.TypeComparer.compareAppliedType2$1(TypeComparer.scala:1213)
[error] dotty.tools.dotc.core.TypeComparer.thirdTry$1(TypeComparer.scala:573)
[error] dotty.tools.dotc.core.TypeComparer.secondTry$1(TypeComparer.scala:506)
[error] dotty.tools.dotc.core.TypeComparer.firstTry$1(TypeComparer.scala:383)
[error] dotty.tools.dotc.core.TypeComparer.recur(TypeComparer.scala:1336)
[error] dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:194)
[error] dotty.tools.dotc.core.TypeComparer.isSubApproxHi$1(TypeComparer.scala:1311)
[error] dotty.tools.dotc.core.TypeComparer.thirdTryNamed$1(TypeComparer.scala:526)
[error] dotty.tools.dotc.core.TypeComparer.thirdTry$1(TypeComparer.scala:575)
[error] dotty.tools.dotc.core.TypeComparer.secondTry$1(TypeComparer.scala:506)
[error] dotty.tools.dotc.core.TypeComparer.compareNamed$1(TypeComparer.scala:306)
[error] dotty.tools.dotc.core.TypeComparer.firstTry$1(TypeComparer.scala:312)
[error] dotty.tools.dotc.core.TypeComparer.recur(TypeComparer.scala:1336)
[error] dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:194)
[error] dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:204)
[error] dotty.tools.dotc.core.TypeComparer.isSub(TypeComparer.scala:206)
[error] dotty.tools.dotc.core.ConstraintHandling.addOneBound(ConstraintHandling.scala:274)
[error] dotty.tools.dotc.core.ConstraintHandling.addOneBound$(ConstraintHandling.scala:27)
[error] dotty.tools.dotc.core.TypeComparer.addOneBound(TypeComparer.scala:30)
[error] dotty.tools.dotc.core.ConstraintHandling.addBoundTransitively(ConstraintHandling.scala:321)
[error] dotty.tools.dotc.core.ConstraintHandling.addBoundTransitively$(ConstraintHandling.scala:27)
[error] dotty.tools.dotc.core.TypeComparer.addBoundTransitively(TypeComparer.scala:30)
[error] dotty.tools.dotc.core.ConstraintHandling.addConstraint(ConstraintHandling.scala:720)
[error] dotty.tools.dotc.core.ConstraintHandling.addConstraint$(ConstraintHandling.scala:27)
[error] dotty.tools.dotc.core.TypeComparer.addConstraint(TypeComparer.scala:30)
[error] dotty.tools.dotc.core.TypeComparer.compareTypeParamRef$2(TypeComparer.scala:566)
[error] dotty.tools.dotc.core.TypeComparer.thirdTry$1(TypeComparer.scala:577)
[error] dotty.tools.dotc.core.TypeComparer.secondTry$1(TypeComparer.scala:506)
[error] dotty.tools.dotc.core.TypeComparer.firstTry$1(TypeComparer.scala:316)
[error] dotty.tools.dotc.core.TypeComparer.recur(TypeComparer.scala:1336)
[error] dotty.tools.dotc.core.TypeComparer.firstTry$1(TypeComparer.scala:318)
[error] dotty.tools.dotc.core.TypeComparer.recur(TypeComparer.scala:1336)
[error] dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:194)
[error] dotty.tools.dotc.core.TypeComparer.isSubType(TypeComparer.scala:204)
[error] dotty.tools.dotc.core.TypeComparer.topLevelSubType(TypeComparer.scala:128)
[error] dotty.tools.dotc.core.TypeComparer.necessarySubType(TypeComparer.scala:139)
[error] dotty.tools.dotc.core.TypeComparer$.necessarySubType(TypeComparer.scala:2755)
[error] dotty.tools.dotc.typer.ProtoTypes$Compatibility.necessarilyCompatible(ProtoTypes.scala:46)
[error] dotty.tools.dotc.typer.ProtoTypes$Compatibility.necessarilyCompatible$(ProtoTypes.scala:25)
[error] dotty.tools.dotc.typer.ProtoTypes$NoViewsAllowed$.necessarilyCompatible(ProtoTypes.scala:119)
[error] dotty.tools.dotc.typer.ProtoTypes$Compatibility.constrainResult(ProtoTypes.scala:96)
[error] dotty.tools.dotc.typer.ProtoTypes$Compatibility.constrainResult$(ProtoTypes.scala:25)
[error] dotty.tools.dotc.typer.ProtoTypes$NoViewsAllowed$.constrainResult(ProtoTypes.scala:119)
[error] dotty.tools.dotc.typer.ProtoTypes$Compatibility.constrainResult(ProtoTypes.scala:116)
[error] dotty.tools.dotc.typer.ProtoTypes$Compatibility.constrainResult$(ProtoTypes.scala:25)
[error] dotty.tools.dotc.typer.ProtoTypes$NoViewsAllowed$.constrainResult(ProtoTypes.scala:119)
[error] dotty.tools.dotc.typer.Applications$Application.init(Applications.scala:453)
[error] dotty.tools.dotc.typer.Applications$TypedApply.<init>(Applications.scala:748)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.<init>(Applications.scala:865)
[error] dotty.tools.dotc.typer.Applications.ApplyTo(Applications.scala:1077)
[error] dotty.tools.dotc.typer.Applications.ApplyTo$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.ApplyTo(Typer.scala:117)
[error] dotty.tools.dotc.typer.Applications.simpleApply$1(Applications.scala:923)
[error] dotty.tools.dotc.typer.Applications.realApply$1$$anonfun$3(Applications.scala:1003)
[error] dotty.tools.dotc.typer.Typer.tryEither(Typer.scala:3131)
[error] dotty.tools.dotc.typer.Applications.realApply$1(Applications.scala:1014)
[error] dotty.tools.dotc.typer.Applications.typedApply(Applications.scala:1052)
[error] dotty.tools.dotc.typer.Applications.typedApply$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.typedApply(Typer.scala:117)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2859)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.$anonfun$7(ProtoTypes.scala:482)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.cacheTypedArg(ProtoTypes.scala:405)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.typedArg(ProtoTypes.scala:483)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.typedArg(Applications.scala:866)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.typedArg(Applications.scala:866)
[error] dotty.tools.dotc.typer.Applications$Application.addTyped$1(Applications.scala:557)
[error] dotty.tools.dotc.typer.Applications$Application.matchArgs(Applications.scala:622)
[error] dotty.tools.dotc.typer.Applications$Application.init(Applications.scala:460)
[error] dotty.tools.dotc.typer.Applications$TypedApply.<init>(Applications.scala:748)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.<init>(Applications.scala:865)
[error] dotty.tools.dotc.typer.Applications.ApplyTo(Applications.scala:1077)
[error] dotty.tools.dotc.typer.Applications.ApplyTo$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.ApplyTo(Typer.scala:117)
[error] dotty.tools.dotc.typer.Applications.simpleApply$1(Applications.scala:923)
[error] dotty.tools.dotc.typer.Applications.realApply$1$$anonfun$3(Applications.scala:1003)
[error] dotty.tools.dotc.typer.Typer.tryEither(Typer.scala:3131)
[error] dotty.tools.dotc.typer.Applications.realApply$1(Applications.scala:1014)
[error] dotty.tools.dotc.typer.Applications.typedApply(Applications.scala:1052)
[error] dotty.tools.dotc.typer.Applications.typedApply$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.typedApply(Typer.scala:117)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2859)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedTuple(Typer.scala:2768)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2896)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.$anonfun$7(ProtoTypes.scala:482)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.cacheTypedArg(ProtoTypes.scala:405)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.typedArg(ProtoTypes.scala:483)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.typedArg(Applications.scala:866)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.typedArg(Applications.scala:866)
[error] dotty.tools.dotc.typer.Applications$Application.addTyped$1(Applications.scala:557)
[error] dotty.tools.dotc.typer.Applications$Application.matchArgs(Applications.scala:622)
[error] dotty.tools.dotc.typer.Applications$Application.init(Applications.scala:460)
[error] dotty.tools.dotc.typer.Applications$TypedApply.<init>(Applications.scala:748)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.<init>(Applications.scala:865)
[error] dotty.tools.dotc.typer.Applications.ApplyTo(Applications.scala:1077)
[error] dotty.tools.dotc.typer.Applications.ApplyTo$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.ApplyTo(Typer.scala:117)
[error] dotty.tools.dotc.typer.Applications.simpleApply$1(Applications.scala:923)
[error] dotty.tools.dotc.typer.Applications.realApply$1$$anonfun$3(Applications.scala:1003)
[error] dotty.tools.dotc.typer.Typer.tryEither(Typer.scala:3131)
[error] dotty.tools.dotc.typer.Applications.realApply$1(Applications.scala:1014)
[error] dotty.tools.dotc.typer.Applications.typedApply(Applications.scala:1052)
[error] dotty.tools.dotc.typer.Applications.typedApply$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.typedApply(Typer.scala:117)
[error] dotty.tools.dotc.typer.Typer.typedInfixOp(Typer.scala:2743)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2898)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3107)
[error] dotty.tools.dotc.typer.Typer.typedBlock(Typer.scala:1062)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2867)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3107)
[error] dotty.tools.dotc.typer.Typer.$anonfun$48(Typer.scala:2295)
[error] dotty.tools.dotc.typer.PrepareInlineable$.dropInlineIfError(PrepareInlineable.scala:248)
[error] dotty.tools.dotc.typer.Typer.typedDefDef(Typer.scala:2295)
[error] dotty.tools.dotc.typer.Typer.typedNamed$1(Typer.scala:2835)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2921)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.traverse$1(Typer.scala:3013)
[error] dotty.tools.dotc.typer.Typer.typedStats(Typer.scala:3063)
[error] dotty.tools.dotc.typer.Typer.typedBlockStats(Typer.scala:1056)
[error] dotty.tools.dotc.typer.Typer.typedBlock(Typer.scala:1060)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2867)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedFunctionValue(Typer.scala:1464)
[error] dotty.tools.dotc.typer.Typer.typedFunction(Typer.scala:1238)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2869)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3107)
[error] dotty.tools.dotc.typer.Typer.typedBlock(Typer.scala:1062)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2867)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.$anonfun$7(ProtoTypes.scala:482)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.cacheTypedArg(ProtoTypes.scala:405)
[error] dotty.tools.dotc.typer.ProtoTypes$FunProto.typedArg(ProtoTypes.scala:483)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.typedArg(Applications.scala:866)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.typedArg(Applications.scala:866)
[error] dotty.tools.dotc.typer.Applications$Application.addTyped$1(Applications.scala:557)
[error] dotty.tools.dotc.typer.Applications$Application.matchArgs(Applications.scala:622)
[error] dotty.tools.dotc.typer.Applications$Application.init(Applications.scala:460)
[error] dotty.tools.dotc.typer.Applications$TypedApply.<init>(Applications.scala:748)
[error] dotty.tools.dotc.typer.Applications$ApplyToUntyped.<init>(Applications.scala:865)
[error] dotty.tools.dotc.typer.Applications.ApplyTo(Applications.scala:1077)
[error] dotty.tools.dotc.typer.Applications.ApplyTo$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.ApplyTo(Typer.scala:117)
[error] dotty.tools.dotc.typer.Applications.simpleApply$1(Applications.scala:923)
[error] dotty.tools.dotc.typer.Applications.realApply$1$$anonfun$3(Applications.scala:1003)
[error] dotty.tools.dotc.typer.Typer.tryEither(Typer.scala:3131)
[error] dotty.tools.dotc.typer.Applications.realApply$1(Applications.scala:1014)
[error] dotty.tools.dotc.typer.Applications.typedApply(Applications.scala:1052)
[error] dotty.tools.dotc.typer.Applications.typedApply$(Applications.scala:327)
[error] dotty.tools.dotc.typer.Typer.typedApply(Typer.scala:117)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2859)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3107)
[error] dotty.tools.dotc.typer.Namer.typedAheadExpr$$anonfun$1(Namer.scala:1618)
[error] dotty.tools.dotc.typer.Namer.typedAhead(Namer.scala:1608)
[error] dotty.tools.dotc.typer.Namer.typedAheadExpr(Namer.scala:1618)
[error] dotty.tools.dotc.typer.Namer.typedAheadRhs$1$$anonfun$1(Namer.scala:1866)
[error] dotty.tools.dotc.typer.PrepareInlineable$.dropInlineIfError(PrepareInlineable.scala:248)
[error] dotty.tools.dotc.typer.Namer.typedAheadRhs$1(Namer.scala:1866)
[error] dotty.tools.dotc.typer.Namer.rhsType$1(Namer.scala:1874)
[error] dotty.tools.dotc.typer.Namer.cookedRhsType$1(Namer.scala:1892)
[error] dotty.tools.dotc.typer.Namer.lhsType$1(Namer.scala:1893)
[error] dotty.tools.dotc.typer.Namer.inferredResultType(Namer.scala:1904)
[error] dotty.tools.dotc.typer.Namer.inferredType$1(Namer.scala:1657)
[error] dotty.tools.dotc.typer.Namer.valOrDefDefSig(Namer.scala:1664)
[error] dotty.tools.dotc.typer.Namer$Completer.typeSig(Namer.scala:782)
[error] dotty.tools.dotc.typer.Namer$Completer.completeInCreationContext(Namer.scala:921)
[error] dotty.tools.dotc.typer.Namer$Completer.complete(Namer.scala:809)
[error] dotty.tools.dotc.core.SymDenotations$SymDenotation.completeFrom(SymDenotations.scala:171)
[error] dotty.tools.dotc.core.Denotations$Denotation.completeInfo$1(Denotations.scala:187)
[error] dotty.tools.dotc.core.Denotations$Denotation.info(Denotations.scala:189)
[error] dotty.tools.dotc.core.SymDenotations$SymDenotation.ensureCompleted(SymDenotations.scala:373)
[error] dotty.tools.dotc.typer.Typer.retrieveSym(Typer.scala:2800)
[error] dotty.tools.dotc.typer.Typer.typedNamed$1(Typer.scala:2825)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2921)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.traverse$1(Typer.scala:3013)
[error] dotty.tools.dotc.typer.Typer.typedStats(Typer.scala:3063)
[error] dotty.tools.dotc.typer.Typer.typedBlockStats(Typer.scala:1056)
[error] dotty.tools.dotc.typer.Typer.typedBlock(Typer.scala:1060)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2867)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3107)
[error] dotty.tools.dotc.typer.Typer.$anonfun$48(Typer.scala:2295)
[error] dotty.tools.dotc.typer.PrepareInlineable$.dropInlineIfError(PrepareInlineable.scala:248)
[error] dotty.tools.dotc.typer.Typer.typedDefDef(Typer.scala:2295)
[error] dotty.tools.dotc.typer.Typer.typedNamed$1(Typer.scala:2835)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2921)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.traverse$1(Typer.scala:3013)
[error] dotty.tools.dotc.typer.Typer.typedStats(Typer.scala:3063)
[error] dotty.tools.dotc.typer.Typer.typedClassDef(Typer.scala:2500)
[error] dotty.tools.dotc.typer.Typer.typedTypeOrClassDef$1(Typer.scala:2847)
[error] dotty.tools.dotc.typer.Typer.typedNamed$1(Typer.scala:2851)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2921)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.traverse$1(Typer.scala:3013)
[error] dotty.tools.dotc.typer.Typer.typedStats(Typer.scala:3063)
[error] dotty.tools.dotc.typer.Typer.typedPackageDef(Typer.scala:2629)
[error] dotty.tools.dotc.typer.Typer.typedUnnamed$1(Typer.scala:2892)
[error] dotty.tools.dotc.typer.Typer.typedUnadapted(Typer.scala:2922)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2987)
[error] dotty.tools.dotc.typer.Typer.typed(Typer.scala:2991)
[error] dotty.tools.dotc.typer.Typer.typedExpr(Typer.scala:3107)
[error] dotty.tools.dotc.typer.TyperPhase.typeCheck$$anonfun$1(TyperPhase.scala:43)
[error] dotty.tools.dotc.typer.TyperPhase.typeCheck$$anonfun$adapted$1(TyperPhase.scala:50)
[error] scala.Function0.apply$mcV$sp(Function0.scala:39)
[error] dotty.tools.dotc.core.Phases$Phase.monitor(Phases.scala:417)
[error] dotty.tools.dotc.typer.TyperPhase.typeCheck(TyperPhase.scala:50)
[error] dotty.tools.dotc.typer.TyperPhase.runOn$$anonfun$3(TyperPhase.scala:84)
[error] scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:333)
[error] dotty.tools.dotc.typer.TyperPhase.runOn(TyperPhase.scala:84)
[error] dotty.tools.dotc.Run.runPhases$1$$anonfun$1(Run.scala:234)
[error] scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.ArrayOps$.foreach$extension(ArrayOps.scala:1328)
[error] dotty.tools.dotc.Run.runPhases$1(Run.scala:245)
[error] dotty.tools.dotc.Run.compileUnits$$anonfun$1(Run.scala:253)
[error] dotty.tools.dotc.Run.compileUnits$$anonfun$adapted$1(Run.scala:262)
[error] dotty.tools.dotc.util.Stats$.maybeMonitored(Stats.scala:68)
[error] dotty.tools.dotc.Run.compileUnits(Run.scala:262)
[error] dotty.tools.dotc.Run.compileSources(Run.scala:186)
[error] dotty.tools.dotc.Run.compile(Run.scala:170)
[error] dotty.tools.dotc.Driver.doCompile(Driver.scala:35)
[error] dotty.tools.xsbt.CompilerBridgeDriver.run(CompilerBridgeDriver.java:88)
[error] dotty.tools.xsbt.CompilerBridge.run(CompilerBridge.java:22)
[error] sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:91)
[error] sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$7(MixedAnalyzingCompiler.scala:192)
[error] scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error] sbt.internal.inc.MixedAnalyzingCompiler.timed(MixedAnalyzingCompiler.scala:247)
[error] sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4(MixedAnalyzingCompiler.scala:182)
[error] sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4$adapted(MixedAnalyzingCompiler.scala:163)
[error] sbt.internal.inc.JarUtils$.withPreviousJar(JarUtils.scala:239)
[error] sbt.internal.inc.MixedAnalyzingCompiler.compileScala$1(MixedAnalyzingCompiler.scala:163)
[error] sbt.internal.inc.MixedAnalyzingCompiler.compile(MixedAnalyzingCompiler.scala:210)
[error] sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1(IncrementalCompilerImpl.scala:528)
[error] sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1$adapted(IncrementalCompilerImpl.scala:528)
[error] sbt.internal.inc.Incremental$.$anonfun$apply$5(Incremental.scala:175)
[error] sbt.internal.inc.Incremental$.$anonfun$apply$5$adapted(Incremental.scala:173)
[error] sbt.internal.inc.Incremental$$anon$2.run(Incremental.scala:459)
[error] sbt.internal.inc.IncrementalCommon$CycleState.next(IncrementalCommon.scala:116)
[error] sbt.internal.inc.IncrementalCommon$$anon$1.next(IncrementalCommon.scala:56)
[error] sbt.internal.inc.IncrementalCommon$$anon$1.next(IncrementalCommon.scala:52)
[error] sbt.internal.inc.IncrementalCommon.cycle(IncrementalCommon.scala:263)
[error] sbt.internal.inc.Incremental$.$anonfun$incrementalCompile$8(Incremental.scala:414)
[error] sbt.internal.inc.Incremental$.withClassfileManager(Incremental.scala:501)
[error] sbt.internal.inc.Incremental$.incrementalCompile(Incremental.scala:401)
[error] sbt.internal.inc.Incremental$.apply(Incremental.scala:167)
[error] sbt.internal.inc.IncrementalCompilerImpl.compileInternal(IncrementalCompilerImpl.scala:528)
[error] sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileIncrementally$1(IncrementalCompilerImpl.scala:482)
[error] sbt.internal.inc.IncrementalCompilerImpl.handleCompilationError(IncrementalCompilerImpl.scala:332)
[error] sbt.internal.inc.IncrementalCompilerImpl.compileIncrementally(IncrementalCompilerImpl.scala:420)
[error] sbt.internal.inc.IncrementalCompilerImpl.compile(IncrementalCompilerImpl.scala:137)
[error] sbt.Defaults$.compileIncrementalTaskImpl(Defaults.scala:2357)
[error] sbt.Defaults$.$anonfun$compileIncrementalTask$2(Defaults.scala:2314)
[error] sbt.internal.io.Retry$.apply(Retry.scala:46)
[error] sbt.internal.io.Retry$.apply(Retry.scala:28)
[error] sbt.internal.io.Retry$.apply(Retry.scala:23)
[error] sbt.internal.server.BspCompileTask$.compute(BspCompileTask.scala:31)
[error] sbt.Defaults$.$anonfun$compileIncrementalTask$1(Defaults.scala:2310)
[error] scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error] sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
[error] sbt.std.Transform$$anon$4.work(Transform.scala:68)
[error] sbt.Execute.$anonfun$submit$2(Execute.scala:282)
[error] sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:23)
[error] sbt.Execute.work(Execute.scala:291)
[error] sbt.Execute.$anonfun$submit$1(Execute.scala:282)
[error] sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error] sbt.CompletionService$$anon$2.call(CompletionService.scala:64)
[error] java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error] java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[error] java.util.concurrent.FutureTask.run(FutureTask.java:266)
[error] java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[error] java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[error] java.lang.Thread.run(Thread.java:748)