Skip to content

Commit a34d074

Browse files
committed
Disabled code that caused duplicate definition crasher.
Two overriding lazyvals cause a duplicate definition in the getter. Now DottyBackendInterface compiles up to backend, where it dies with at scala.Predef$.assert(Predef.scala:151) at dotty.tools.dotc.core.Types$MethodType.<init>(Types.scala:1963) at dotty.tools.dotc.core.Types$CachedMethodType.<init>(Types.scala:2057) at dotty.tools.dotc.core.Types$MethodType$.apply(Types.scala:2104) at dotty.tools.dotc.core.Types$MethodType$.apply(Types.scala:2102) at dotty.tools.dotc.core.Types$MethodTypeCompanion.apply(Types.scala:2080) at dotty.tools.dotc.core.TypeErasure.eraseInfo(TypeErasure.scala:384) at dotty.tools.dotc.core.TypeErasure$.transformInfo(TypeErasure.scala:165) at dotty.tools.dotc.transform.Erasure.transform(Erasure.scala:54) at dotty.tools.dotc.core.Denotations$SingleDenotation.current(Denotations.scala:568) at dotty.tools.dotc.core.Symbols$Symbol.denot(Symbols.scala:394) at dotty.tools.dotc.core.Symbols$Symbol.name(Symbols.scala:462) at dotty.tools.dotc.core.SymDenotations$ClassDenotation$$anonfun$computeMemberNames$1$2.apply(SymDenotations.scala:1549) at dotty.tools.dotc.core.SymDenotations$ClassDenotation$$anonfun$computeMemberNames$1$2.apply(SymDenotations.scala:1549) at scala.collection.Iterator$class.foreach(Iterator.scala:750) at scala.collection.AbstractIterator.foreach(Iterator.scala:1202) at dotty.tools.dotc.core.SymDenotations$ClassDenotation.computeMemberNames$1(SymDenotations.scala:1549) at dotty.tools.dotc.core.SymDenotations$ClassDenotation.memberNames(SymDenotations.scala:1558) at dotty.tools.dotc.core.Types$Type.memberNames(Types.scala:510) at dotty.tools.dotc.core.Types$Type.memberDenots(Types.scala:526) at dotty.tools.dotc.core.Types$Type$$anonfun$memberClasses$1.apply(Types.scala:557) at dotty.tools.dotc.core.Types$Type$$anonfun$memberClasses$1.apply(Types.scala:557) at dotty.tools.dotc.util.Stats$.track(Stats.scala:35) at dotty.tools.dotc.core.Types$Type.memberClasses(Types.scala:556) at dotty.tools.backend.jvm.DottyBackendInterface$$anon$9.memberClasses(DottyBackendInterface.scala:691)
1 parent bb9eb23 commit a34d074

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/dotty/tools/backend/jvm/DottyBackendInterface.scala

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,9 @@ class DottyBackendInterface()(implicit ctx: Context) extends BackendInterface{
103103
val BoxesRunTimeClass = toDenot(BoxesRunTimeModule).moduleClass.asClass
104104

105105
// require LambdaMetafactory: scalac uses getClassIfDefined, but we need those always.
106-
override lazy val LambdaMetaFactory = ctx.requiredClass("java.lang.invoke.LambdaMetafactory")
107-
override lazy val MethodHandle = ctx.requiredClass("java.lang.invoke.MethodHandle")
106+
// disabled, because it causes crashes (duplicate definition)
107+
//override lazy val LambdaMetaFactory = ctx.requiredClass("java.lang.invoke.LambdaMetafactory")
108+
//override lazy val MethodHandle = ctx.requiredClass("java.lang.invoke.MethodHandle")
108109

109110
val nme_valueOf: Name = StdNames.nme.valueOf
110111
val nme_apply = StdNames.nme.apply

0 commit comments

Comments
 (0)