We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent cb84d04 commit 80db021Copy full SHA for 80db021
compiler/src/dotty/tools/dotc/transform/Mixin.scala
@@ -148,9 +148,10 @@ class Mixin extends MiniPhase with SymTransformer { thisPhase =>
148
val classInfo = sym.asClass.classInfo
149
val decls1 = classInfo.decls.cloneScope
150
var modified: Boolean = false
151
- for (getter <- classInfo.decls)
152
- if needsTraitSetter(getter) then
153
- val setter = makeTraitSetter(getter.asTerm)
+ for (decl <- classInfo.decls)
+ // !decl.isClass avoids forcing nested traits, preventing cycles
+ if !decl.isClass && needsTraitSetter(decl) then
154
+ val setter = makeTraitSetter(decl.asTerm)
155
decls1.enter(setter)
156
modified = true
157
if modified then
0 commit comments