summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/typechecker/Typers.scala
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2013-05-21 19:24:02 +0200
committerJason Zaugg <jzaugg@gmail.com>2013-05-21 19:24:02 +0200
commit7c908309953f15baed47b1e4cae1d720f9787bbb (patch)
tree7e8d433fab2c0561744c1c50b5c7e65c4670ce51 /src/compiler/scala/tools/nsc/typechecker/Typers.scala
parentf81a4f92967a2dd69784864e9ab9e1624d7db35b (diff)
downloadscala-7c908309953f15baed47b1e4cae1d720f9787bbb.tar.gz
scala-7c908309953f15baed47b1e4cae1d720f9787bbb.tar.bz2
scala-7c908309953f15baed47b1e4cae1d720f9787bbb.zip
SI-7436 Varargs awareness for super param aliasing.
Don't consider a super class parameter accessor to be an alias if it is a repeated. Parameter aliases are used to avoid retaining redundant fields in the subclass; but that optimization is out of the question here.
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Typers.scala')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/Typers.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Typers.scala b/src/compiler/scala/tools/nsc/typechecker/Typers.scala
index c59ef4ebda..bd92b330be 100644
--- a/src/compiler/scala/tools/nsc/typechecker/Typers.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/Typers.scala
@@ -2051,7 +2051,7 @@ trait Typers extends Modes with Adaptations with Tags {
orElse (superAcc getter superAcc.owner)
filter (alias => superClazz.info.nonPrivateMember(alias.name) == alias)
)
- if (alias.exists && !alias.accessed.isVariable) {
+ if (alias.exists && !alias.accessed.isVariable && !isRepeatedParamType(alias.accessed.info)) {
val ownAcc = clazz.info decl name suchThat (_.isParamAccessor) match {
case acc if !acc.isDeferred && acc.hasAccessorFlag => acc.accessed
case acc => acc