Files
kotlin-fork/compiler/testData/codegen/box/jvm8/defaults/allCompatibility/bridgeWithProperties2.kt
T
Mikhail Glukhikh e7e80be34a [FIR2IR] Populate overridden symbols even for !isOverride
Before this commit we considered !isOverride as a sign that
function / field / accessor has no overridden symbols.
However, it's false for deserialized, because isOverride
is always false there.

This commit fixes 68 BB tests but breaks 25 BB tests (not yet muted)
2020-05-14 13:40:36 +03:00

39 lines
618 B
Kotlin
Vendored

// !JVM_DEFAULT_MODE: all-compatibility
// TARGET_BACKEND: JVM
// FILE: Simple.java
public interface Simple extends KInterface2 {
default String test() {
return KInterface2.DefaultImpls.getBar(this);
}
}
// FILE: Foo.java
public class Foo implements Simple {
public String getBar() {
return "fail";
}
}
// FILE: main.kt
// JVM_TARGET: 1.8
// WITH_RUNTIME
interface KInterface<T> {
val foo: T
val bar: T
get() = foo
}
interface KInterface2 : KInterface<String> {
override val foo: String
get() = "OK"
}
fun box(): String {
return Foo().test()
}