Files
kotlin-fork/compiler/testData/ir/irText/fakeOverrides/methodparameters/basicKotlinDefaultParametersOverride.kt.txt
anzhela.sukhanova 82255d5ee8 [Test] KT-61360: add tests for the IrFakeOverrideBuilder
Add tests for fake overrides with focus on java interoperability

Co-authored-by: Aleksandra Arsenteva <aleksandra.arsenteva@jetbrains.com>
2024-03-04 16:21:02 +00:00

65 lines
874 B
Kotlin
Vendored

open class A {
constructor() /* primary */ {
super/*Any*/()
/* <init>() */
}
open fun foo(a: Int = 0, b: Any? = "string", c: Nothing? = null) {
}
}
class B : Java1 {
constructor() /* primary */ {
super/*Java1*/()
/* <init>() */
}
}
class C : Java1 {
constructor() /* primary */ {
super/*Java1*/()
/* <init>() */
}
override fun foo(a: Int, b: Any?, c: Nothing?) {
}
}
class D : Java2 {
constructor() /* primary */ {
super/*Java2*/()
/* <init>() */
}
}
class E : Java2 {
constructor() /* primary */ {
super/*Java2*/()
/* <init>() */
}
override fun foo(a: Int, b: Any?, c: Nothing?) {
}
}
fun test(b: B, c: C, d: D, e: E) {
b.foo()
b.foo(a = 1)
c.foo()
c.foo(a = 1, b = "", c = null)
d.foo()
d.foo(a = 1, b = null, c = null)
e.foo()
e.foo(a = null, b = null, c = null)
}