summaryrefslogtreecommitdiff
path: root/src/compiler
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala4
-rw-r--r--src/compiler/scala/tools/nsc/transform/Mixin.scala1
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