c746da3ce4
* - bridges building - bridges support in vtable and methods table * FunctionDescriptor.signature fix + some assertions * tests * refactoring * refactoring * removed debug output * refactoring * review fixes * implemented bridge construction for parameters * tests * refactoring * removed custom box/unbox * added bridge for extension receiver
21 lines
309 B
Kotlin
21 lines
309 B
Kotlin
// vtable call + interface call
|
|
interface Z {
|
|
fun foo(): Any
|
|
}
|
|
|
|
interface Y {
|
|
fun foo(): Int
|
|
}
|
|
|
|
open class A {
|
|
fun foo(): Int = 42
|
|
}
|
|
|
|
open class B: A(), Z, Y
|
|
|
|
fun main(args: Array<String>) {
|
|
val z: Z = B()
|
|
val y: Y = z as Y
|
|
println(z.foo().toString())
|
|
println(y.foo().toString())
|
|
} |