diff options
author | Adriaan Moors <adriaan.moors@typesafe.com> | 2014-02-11 19:39:39 -0800 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@typesafe.com> | 2014-02-11 19:39:39 -0800 |
commit | 98320a6d5947f26e7252b025cf56a0763b39cd07 (patch) | |
tree | 34bb175cd1839ba8187e12562fa31ea5622d8a94 /src/compiler | |
parent | e3d624dd2760f2593949a1b5493f5a92fb02138a (diff) | |
parent | 47885ff665a951d2574a7ca5b2ea27c30b67c862 (diff) | |
download | scala-98320a6d5947f26e7252b025cf56a0763b39cd07.tar.gz scala-98320a6d5947f26e7252b025cf56a0763b39cd07.tar.bz2 scala-98320a6d5947f26e7252b025cf56a0763b39cd07.zip |
Merge pull request #3503 from adriaanm/rebase-3440
SI-7475 Private members aren't inheritable, findMember overhaul
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/OverridingPairs.scala | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/OverridingPairs.scala b/src/compiler/scala/tools/nsc/transform/OverridingPairs.scala index 870eafbf20..bbd11efa7e 100644 --- a/src/compiler/scala/tools/nsc/transform/OverridingPairs.scala +++ b/src/compiler/scala/tools/nsc/transform/OverridingPairs.scala @@ -24,7 +24,12 @@ abstract class OverridingPairs extends SymbolPairs { /** Symbols to exclude: Here these are constructors and private/artifact symbols, * including bridges. But it may be refined in subclasses. */ - override protected def exclude(sym: Symbol) = sym.isPrivateLocal || sym.isArtifact || sym.isConstructor + override protected def exclude(sym: Symbol) = ( + sym.isPrivateLocal + || sym.isArtifact + || sym.isConstructor + || (sym.isPrivate && sym.owner != base) // Privates aren't inherited. Needed for pos/t7475a.scala + ) /** Types always match. Term symbols match if their member types * relative to `self` match. |