aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dotty/tools/dotc/transform/Mixin.scala2
-rw-r--r--tests/run/i744.check1
-rw-r--r--tests/run/i744.scala8
3 files changed, 10 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/transform/Mixin.scala b/src/dotty/tools/dotc/transform/Mixin.scala
index e405b08a0..982a6346b 100644
--- a/src/dotty/tools/dotc/transform/Mixin.scala
+++ b/src/dotty/tools/dotc/transform/Mixin.scala
@@ -230,7 +230,7 @@ class Mixin extends MiniPhaseTransform with SymTransformer { thisTransform =>
def setters(mixin: ClassSymbol): List[Tree] =
for (setter <- mixin.info.decls.filter(setr => setr.isSetter && !wasDeferred(setr)).toList)
- yield DefDef(implementation(setter.asTerm), unitLiteral.withPos(cls.pos))
+ yield transformFollowing(DefDef(implementation(setter.asTerm), unitLiteral.withPos(cls.pos)))
cpy.Template(impl)(
constr =
diff --git a/tests/run/i744.check b/tests/run/i744.check
new file mode 100644
index 000000000..d00491fd7
--- /dev/null
+++ b/tests/run/i744.check
@@ -0,0 +1 @@
+1
diff --git a/tests/run/i744.scala b/tests/run/i744.scala
new file mode 100644
index 000000000..4ff6c9288
--- /dev/null
+++ b/tests/run/i744.scala
@@ -0,0 +1,8 @@
+trait A{
+ private var s = 1
+ def getS = s
+}
+
+object Test extends A {
+ def main(args: Array[String]): Unit = println(getS)
+}