From dca86389ac01286db3bb4b7a46ac8014744bda31 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Tue, 20 Nov 2007 16:24:13 +0000 Subject: backed out of the changes that broke the build/... backed out of the changes that broke the build/test suite. reverted Symbols.back to pre 13309. --- src/compiler/scala/tools/nsc/symtab/Symbols.scala | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/compiler') diff --git a/src/compiler/scala/tools/nsc/symtab/Symbols.scala b/src/compiler/scala/tools/nsc/symtab/Symbols.scala index b74a7a8dd0..cf89332ae9 100644 --- a/src/compiler/scala/tools/nsc/symtab/Symbols.scala +++ b/src/compiler/scala/tools/nsc/symtab/Symbols.scala @@ -902,12 +902,13 @@ trait Symbols { * pre: `this.owner' is in the base class sequence of `base'. */ final def superSymbol(base: Symbol): Symbol = { - var bcs = base.info.baseClasses.dropWhile(owner != _) + var bcs = base.info.baseClasses.dropWhile(owner !=).tail var sym: Symbol = NoSymbol while (!bcs.isEmpty && sym == NoSymbol) { + if (!bcs.head.isImplClass) + sym = matchingSymbol(bcs.head, base.thisType).suchThat( + sym => !sym.hasFlag(DEFERRED)) bcs = bcs.tail - if (!bcs.isEmpty && bcs.head.isImplClass) - sym = matchingSymbol(bcs.head, base.thisType).suchThat(sym => !sym.hasFlag(DEFERRED)) } sym } -- cgit v1.2.3