FIR Java: support Kotlin extension overriding: at last, #KT-29937 Fixed
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
public open class Inheritor : R|Second| {
|
||||
public open operator function foo R|First|.(first: R|kotlin/String|, s: R|kotlin/Int|): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
interface First
|
||||
|
||||
open class Second {
|
||||
open fun First.foo(s: String, i: Int) {}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
FILE: Base.kt
|
||||
public abstract interface First {
|
||||
}
|
||||
public open class Second {
|
||||
public constructor(): super<R|kotlin/Any|>()
|
||||
|
||||
public open function foo R|First|.(s: R|kotlin/String|, i: R|kotlin/Int|): R|kotlin/Unit| {
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
public class Inheritor extends Second {
|
||||
public void foo(First first, String s, int i) {}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
class Tester : Inheritor(), First {
|
||||
fun test() {
|
||||
foo("abc", 456)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
FILE: Test.kt
|
||||
public final class Tester : R|Inheritor|, R|First| {
|
||||
public constructor(): super<R|Inheritor|>()
|
||||
|
||||
public final function test(): R|kotlin/Unit| {
|
||||
R|/Inheritor.foo|(String(abc), Int(456))
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user