File tree 1 file changed +6
-3
lines changed
compiler/src/dotty/tools/dotc/typer
1 file changed +6
-3
lines changed Original file line number Diff line number Diff line change @@ -609,15 +609,18 @@ object RefChecks {
609
609
// (this is done for efficiency)
610
610
// - members in a prefix of inherited parents that all come from Java or Scala2
611
611
// (this is done to avoid false positives since Scala2's rules for checking are different)
612
- val membersToCheck = new util.HashSet [Name ](4096 )
612
+ val seenMembers = new util.HashSet [Name ](4096 )
613
613
val seenClasses = new util.HashSet [Symbol ](256 )
614
+ val membersToCheck = new mutable.ArrayBuffer [Name ]
614
615
def addDecls (cls : Symbol ): Unit =
615
616
if (! seenClasses.contains(cls)) {
616
617
seenClasses.addEntry(cls)
617
618
for (mbr <- cls.info.decls)
618
619
if (mbr.isTerm && ! mbr.is(Synthetic | Bridge ) && mbr.memberCanMatchInheritedSymbols &&
619
- ! membersToCheck.contains(mbr.name))
620
- membersToCheck.addEntry(mbr.name)
620
+ ! seenMembers.contains(mbr.name)) {
621
+ seenMembers.addEntry(mbr.name)
622
+ membersToCheck += mbr.name
623
+ }
621
624
cls.info.parents.map(_.classSymbol)
622
625
.filter(_.is(AbstractOrTrait ))
623
626
.dropWhile(_.is(JavaDefined | Scala2x ))
You can’t perform that action at this time.
0 commit comments