fda47c45ec
`FakeOverrideBuilder.provideFakeOverrides` recursively changes overrides for all superclasses in the hierarchy, including lazy IR, which is a lot of extra work. Also it leads to some tests failing in the IR fake override builder mode because it changes correct fake overrides of Java classes to incorrect ones. Those tests are unmuted but it doesn't mean they are fixed -- most likely we'll generate fake overrides via IR for lazy IR too, at which point they'll start to fail again.
30 lines
478 B
Kotlin
Vendored
30 lines
478 B
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// ISSUE: KT-51194
|
|
|
|
// MODULE: coreLib_1
|
|
// FILE: Base.java
|
|
public interface Base {
|
|
Object foo();
|
|
}
|
|
|
|
// MODULE: lib(coreLib_1)
|
|
// FILE: Derived.java
|
|
public abstract class Derived implements Base {
|
|
@Override
|
|
public Object foo() {
|
|
return null;
|
|
}
|
|
}
|
|
|
|
// MODULE: coreLib_2
|
|
// FILE: Base.java
|
|
public interface Base {
|
|
<T> T foo();
|
|
}
|
|
|
|
// MODULE: main(coreLib_2, lib)
|
|
// FILE: main.kt
|
|
class Implementation : Derived()
|
|
|
|
fun box() = "OK"
|