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 {
1779
1779
def computeMemberNames (keepOnly : NameFilter )(implicit onBehalf : MemberNames , ctx : Context ): Set [Name ] = {
1780
1780
var names = Set [Name ]()
1781
1781
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
+ }
1792
1798
}
1793
1799
1794
1800
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