Files
kotlin-fork/compiler/testData/codegen/box/fir/sourceBinarySource.kt
T
Dmitriy Novozhilov 84f0f6e099 [FIR] Resolve statuses of supertypes for all non-source classes
Previously we forced computation only for java and precompiled classes,
  assuming, that binary class can not extend source class, but it's not
  true in two cases:
1. Classpath substitution: class with same name declared in library and
   the source (more rare case)
2. Metadata compilation: depends-on dependcies are passed in binary
   format, so `expect class` may be a binary one and corresponding
   `actual class` may be a source. So if some class in `common` module
   extend this expect class, actual class will be substituted instead of it

^KT-65669 Fixed
2024-02-15 12:18:48 +00:00

28 lines
554 B
Kotlin
Vendored

// IGNORE_BACKEND: JS, JS_IR, JS_IR_ES6
// KT-65822: JS targets are ignored, as they doesn't support source-binary-source dependencies
// IGNORE_BACKEND_K2: WASM
// Reason: KT-65794
// IGNORE_NATIVE: cacheMode=STATIC_EVERYWHERE && target=linux_x64
// ISSUE: KT-65669
// MODULE: a
// FILE: a.kt
abstract class Base {
open fun foo() {}
}
open class Derived : Base()
// MODULE: b(a)
// FILE: first.kt
class Impl : Derived() {
override fun foo() {}
}
// FILE: second.kt
abstract class Base {
open fun foo() {}
}
fun box(): String = "OK"