File tree Expand file tree Collapse file tree 2 files changed +21
-10
lines changed
compiler/src/dotty/tools/dotc/core Expand file tree Collapse file tree 2 files changed +21
-10
lines changed Original file line number Diff line number Diff line change @@ -1779,16 +1779,22 @@ object SymDenotations {
17791779 def computeMemberNames (keepOnly : NameFilter )(implicit onBehalf : MemberNames , ctx : Context ): Set [Name ] = {
17801780 var names = Set [Name ]()
17811781 def maybeAdd (name : Name ) = if (keepOnly(thisType, name)) names += name
1782- for (p <- classParents)
1783- for (name <- p.classSymbol.asClass.memberNames(keepOnly))
1784- maybeAdd(name)
1785- val ownSyms =
1786- if (keepOnly eq implicitFilter)
1787- if (this is Package ) Iterator .empty
1788- else info.decls.iterator filter (_ is Implicit )
1789- else info.decls.iterator
1790- for (sym <- ownSyms) maybeAdd(sym.name)
1791- names
1782+ try {
1783+ for (p <- classParents)
1784+ for (name <- p.classSymbol.asClass.memberNames(keepOnly))
1785+ maybeAdd(name)
1786+ val ownSyms =
1787+ if (keepOnly eq implicitFilter)
1788+ if (this is Package ) Iterator .empty
1789+ else info.decls.iterator filter (_ is Implicit )
1790+ else info.decls.iterator
1791+ for (sym <- ownSyms) maybeAdd(sym.name)
1792+ names
1793+ }
1794+ catch {
1795+ case ex : Throwable =>
1796+ handleRecursive(" member names" , i " of $this" , ex)
1797+ }
17921798 }
17931799
17941800 override final def fullNameSeparated (kind : QualifiedNameKind )(implicit ctx : Context ): Name = {
Original file line number Diff line number Diff line change 1+
2+ object O {
3+ type T [R ] = X
4+ class X extends T [Int ] // error
5+ }
You can’t perform that action at this time.
0 commit comments