summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-01-04 15:16:08 +0000
committerMartin Odersky <odersky@gmail.com>2006-01-04 15:16:08 +0000
commit776ecad2a3b1d8b253f06eadc1a54c36be873ebf (patch)
treece7a8d8460d123cef1e00e1503a0bc7b6745294c /src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
parent4e176bc3d22fb4457045b5731e0b202dc5924dfa (diff)
downloadscala-776ecad2a3b1d8b253f06eadc1a54c36be873ebf.tar.gz
scala-776ecad2a3b1d8b253f06eadc1a54c36be873ebf.tar.bz2
scala-776ecad2a3b1d8b253f06eadc1a54c36be873ebf.zip
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/RefChecks.scala')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/RefChecks.scala3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
index d69b6d540c..7057638749 100644
--- a/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/RefChecks.scala
@@ -164,6 +164,9 @@ abstract class RefChecks extends InfoTransform {
if (member hasFlag PRIVATE) { // (1.1)
overrideError("has weaker access privileges; it should not be private");
+ } else if (member.privateWithin != NoSymbol &&
+ !other.privateWithin.ownerChain.contains(member.privateWithin)) {
+ overrideError("has weaker access privileges; it should at least be private["+other.privateWithin.name+"]");
} else if ((member hasFlag PROTECTED) && !(other hasFlag PROTECTED)) { // 1
overrideError("has weaker access privileges; it should not be protected");
} else if (other hasFlag FINAL) { // (1.2)