File tree 4 files changed +24
-5
lines changed
compiler/src/dotty/tools/dotc/core
tests/pos/java-inherited-type1
4 files changed +24
-5
lines changed Original file line number Diff line number Diff line change @@ -54,10 +54,10 @@ object ContextOps:
54
54
// can be referenced from an ident in a subclass or by a selection prefixed by the subclass.
55
55
val toSearch = if (preSym.is(Flags .Module )) then
56
56
if preSym.companionClass.exists then
57
- preSym.companionClass.asClass.nonSelfBaseClasses
57
+ preSym.companionClass.asClass.baseClasses
58
58
else Nil
59
59
else
60
- preSym.asClass.nonSelfBaseClasses
60
+ preSym.asClass.baseClasses
61
61
62
62
toSearch.iterator.map { bc =>
63
63
val pre1 = bc.thisType
Original file line number Diff line number Diff line change @@ -1866,9 +1866,6 @@ object SymDenotations {
1866
1866
def baseClasses (implicit onBehalf : BaseData , ctx : Context ): List [ClassSymbol ] =
1867
1867
baseData._1
1868
1868
1869
- def nonSelfBaseClasses (implicit onBehalf : BaseData , ctx : Context ): List [ClassSymbol ] =
1870
- baseClasses.tail
1871
-
1872
1869
/** Like `baseClasses.length` but more efficient. */
1873
1870
def baseClassesLength (using BaseData , Context ): Int =
1874
1871
// `+ 1` because the baseClassSet does not include the current class unlike baseClasses
Original file line number Diff line number Diff line change @@ -5,4 +5,9 @@ object Test {
5
5
j.ident1(null );
6
6
j.select(null );
7
7
j.select1(null );
8
+
9
+ val message : TestMessage = null
10
+ val builder : TestMessage .Builder = message.toBuilder
11
+ builder.setName(" name" )
12
+
8
13
}
Original file line number Diff line number Diff line change
1
+ abstract class AbstractMessage {
2
+ public static abstract class Builder <BuilderType extends Builder <BuilderType >> {
3
+ }
4
+ }
5
+
6
+ class TestMessage extends AbstractMessage {
7
+
8
+ public Builder toBuilder () {
9
+ return null ;
10
+ }
11
+
12
+ public static class Builder extends AbstractMessage .Builder <Builder > {
13
+ public Builder setName (String name ) {
14
+ return this ;
15
+ }
16
+ }
17
+ }
You can’t perform that action at this time.
0 commit comments