summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Rytz <lukas.rytz@epfl.ch>2012-05-09 11:24:10 +0200
committerLukas Rytz <lukas.rytz@epfl.ch>2012-05-09 11:24:10 +0200
commit5d90d001083d1206e7700a264370055bc41d4672 (patch)
treee6dbcc2a5f38618a530024bd0e3beb16e6603743
parentaa555debf77eeec3a72a1d700f06347d2e489299 (diff)
downloadscala-5d90d001083d1206e7700a264370055bc41d4672.tar.gz
scala-5d90d001083d1206e7700a264370055bc41d4672.tar.bz2
scala-5d90d001083d1206e7700a264370055bc41d4672.zip
imporved comment related to SI-5178
see 9f9932bd20
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/RefChecks.scala5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
index e60cda6af7..6bed0b1228 100644
--- a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
@@ -386,8 +386,9 @@ abstract class RefChecks extends InfoTransform with reflect.internal.transform.R
overrideError("cannot be used here - classes can only override abstract types");
} else if (other.isEffectivelyFinal) { // (1.2)
overrideError("cannot override final member");
- // synthetic exclusion needed for (at least) default getters.
- } else if (!other.isDeferred && !member.isAnyOverride && !member.isSynthetic) {
+ } else if (!other.isDeferred && !member.isAnyOverride && !member.isSynthetic) { // (*)
+ // (*) Synthetic exclusion for (at least) default getters, fixes SI-5178. We cannot assign the OVERRIDE flag to
+ // the default getter: one default getter might sometimes override, sometimes not. Example in comment on ticket.
if (isNeitherInClass && !(other.owner isSubClass member.owner))
emitOverrideError(
clazz + " inherits conflicting members:\n "