blob: 3f1cf271709835448277008a3e9acb877cdebbf5 [file]
// JVM_DEFAULT_MODE: enable
interface A {
fun foo(): String
}
interface B {
fun foo(): String = "OK"
}
interface C : A, B {
override fun foo(): String = super<B>.foo()
}
// In the 'enable' mode, methods from DefaultImpls should never be called.
// 0 INVOKESTATIC A\$DefaultImpls.foo
// 0 INVOKESTATIC B\$DefaultImpls.foo
// There are two calls to B.foo: one is a supercall from C.foo, another is a non-virtual call from B.access$getFoo$jd (which is called from DefaultImpls).
// 2 INVOKESPECIAL B.foo