mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-11 08:31:30 +00:00
28 lines
575 B
Kotlin
Vendored
28 lines
575 B
Kotlin
Vendored
// IGNORE_BACKEND_FIR: JVM_IR
|
|
interface I<T> {
|
|
fun foo(x: T): String = "foo($x)"
|
|
|
|
fun bar(x: T, y: String = "default") = "bar($x,$y)"
|
|
}
|
|
|
|
interface J : I<String>
|
|
|
|
class A : I<String>, J
|
|
|
|
class B : J, I<String>
|
|
|
|
fun box(): String {
|
|
val foo = A().foo("q")
|
|
if (foo != "foo(q)") return "fail1: $foo"
|
|
|
|
val bar1 = A().bar("w")
|
|
if (bar1 != "bar(w,default)") return "fail2: $bar1"
|
|
|
|
val bar2 = A().bar("e", "r")
|
|
if (bar2 != "bar(e,r)") return "fail3: $bar2"
|
|
|
|
val foo2 = B().foo("t")
|
|
if (foo2 != "foo(t)") return "fail4: $foo2"
|
|
|
|
return "OK"
|
|
} |