We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 5ab89f4 + aa0a904 commit 6f70a1bCopy full SHA for 6f70a1b
compiler/src/dotty/tools/dotc/ast/tpd.scala
@@ -407,7 +407,7 @@ object tpd extends Trees.Instance[Type] with TypedTreeInfo {
407
case pre: ThisType =>
408
tp.isType ||
409
pre.cls.isStaticOwner ||
410
- tp.symbol.isParamOrAccessor && !pre.cls.is(Trait) && ctx.owner.enclosingClass == pre.cls
+ tp.symbol.isParamOrAccessor && !pre.cls.is(Trait) && !tp.symbol.owner.is(Trait) && ctx.owner.enclosingClass == pre.cls
411
// was ctx.owner.enclosingClass.derivesFrom(pre.cls) which was not tight enough
412
// and was spuriously triggered in case inner class would inherit from outer one
413
// eg anonymous TypeMap inside TypeMap.andThen
tests/pos/i18091.scala
@@ -0,0 +1,5 @@
1
+trait B(val y: Int)
2
+
3
+class C extends B(20) {
4
+ def foo(): Unit = println(y)
5
+}
0 commit comments