1bbcae5ed2
We cannot call lazy resolve to STATUS phase from scopes as scopes may be accessed on a STATUS phase or earlier ^KT-54890 ^KTIJ-23587 fixed
42 lines
911 B
Kotlin
Vendored
42 lines
911 B
Kotlin
Vendored
// FILE: foo/Super.java
|
|
package foo
|
|
|
|
public abstract class Super<T> {
|
|
protected abstract String getName();
|
|
protected abstract void setName(String s);
|
|
|
|
protected abstract String getName2();
|
|
protected abstract void setName2(String s);
|
|
|
|
protected abstract void doSomething();
|
|
protected abstract void doSomething2();
|
|
}
|
|
|
|
// FILE: bar/Sub.kt
|
|
package bar
|
|
|
|
abstract class Sub<T>: foo.Super<T>() {
|
|
abstract override fun getName(): String
|
|
abstract override fun setName(s: String)
|
|
abstract override fun doSomething()
|
|
}
|
|
|
|
// FILE: foo/test.kt
|
|
package foo
|
|
|
|
fun test(s: bar.Sub<String>) {
|
|
s.<!INVISIBLE_MEMBER!>name<!>
|
|
s.<!INVISIBLE_MEMBER!>name<!> = ""
|
|
s.name2
|
|
s.name2 = ""
|
|
s.<!INVISIBLE_MEMBER!>doSomething<!>()
|
|
s.doSomething2()
|
|
val s2: Super<String> = s
|
|
s2.name
|
|
s2.name = ""
|
|
s2.name2
|
|
s2.name2 = ""
|
|
s2.doSomething()
|
|
s2.doSomething2()
|
|
}
|