diff options
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala | 4 | ||||
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/Mixin.scala | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala index 0356b04e06..4172398f58 100644 --- a/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala +++ b/src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala @@ -387,9 +387,9 @@ abstract class GenJVM extends SubComponent { case _ => (); }} var flags = javaFlags(f.symbol) - /* if (!f.symbol.hasFlag(Flags.MUTABLE)) + if (!f.symbol.hasFlag(Flags.MUTABLE)) flags = flags | JAccessFlags.ACC_FINAL - */ + val jfield = jclass.addNewField(flags | attributes, javaName(f.symbol), diff --git a/src/compiler/scala/tools/nsc/transform/Mixin.scala b/src/compiler/scala/tools/nsc/transform/Mixin.scala index a73b2f1662..8bf0994af6 100644 --- a/src/compiler/scala/tools/nsc/transform/Mixin.scala +++ b/src/compiler/scala/tools/nsc/transform/Mixin.scala @@ -249,6 +249,7 @@ abstract class Mixin extends InfoTransform { addMember(clazz, clazz.newValue(member.pos, nme.getterToLocal(member.name)) setFlag (LOCAL | PRIVATE | member.getFlag(MUTABLE | LAZY)) + setFlag (if (!member.hasFlag(STABLE)) MUTABLE else 0) setInfo member.tpe.resultType) } } else if (member hasFlag SUPERACCESSOR) { // mixin super accessors |