From 7c908309953f15baed47b1e4cae1d720f9787bbb Mon Sep 17 00:00:00 2001 From: Jason Zaugg Date: Tue, 21 May 2013 19:24:02 +0200 Subject: 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. --- src/compiler/scala/tools/nsc/typechecker/Typers.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/compiler/scala/tools/nsc/typechecker/Typers.scala') 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 -- cgit v1.2.3