summaryrefslogtreecommitdiff
path: root/src/compiler
diff options
context:
space:
mode:
authorDonna Malayeri <lindydonna@gmail.com>2009-12-17 12:04:55 +0000
committerDonna Malayeri <lindydonna@gmail.com>2009-12-17 12:04:55 +0000
commit63333f9e622478997a4cf94ee72d8a31370ad4e2 (patch)
treebdd509b22042b02f329082f1a1d8d14ecc84a64d /src/compiler
parentf607fe4f9507d052c17bb239f04dc96796f5858b (diff)
downloadscala-63333f9e622478997a4cf94ee72d8a31370ad4e2.tar.gz
scala-63333f9e622478997a4cf94ee72d8a31370ad4e2.tar.bz2
scala-63333f9e622478997a4cf94ee72d8a31370ad4e2.zip
Fixed #2808. Review by odersky.
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/RefChecks.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
index 41cf46c8f3..4c919f227a 100644
--- a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
@@ -316,7 +316,7 @@ abstract class RefChecks extends InfoTransform {
(other hasFlag ACCESSOR) && other.accessed.isVariable && !other.accessed.hasFlag(LAZY)) {
overrideError("cannot override a mutable variable")
} else if ((member hasFlag (OVERRIDE | ABSOVERRIDE)) &&
- !(member.owner isSubClass other.owner) &&
+ !(member.owner.thisType.baseClasses exists (_ isSubClass other.owner)) &&
!member.isDeferred && !other.isDeferred &&
intersectionIsEmpty(member.allOverriddenSymbols, other.allOverriddenSymbols)) {
overrideError("cannot override a concrete member without a third member that's overridden by both "+