[IR Actualizer] Fix fake-override generation in actual A -> common B -> actual C hierarchy
... where C defines a member x and A overrides the member x #KT-61166 Fixed
This commit is contained in:
committed by
Space Team
parent
293474ee50
commit
ac102dedac
@@ -0,0 +1,26 @@
|
||||
// LANGUAGE: +MultiPlatformProjects
|
||||
// TARGET_BACKEND: JVM_IR
|
||||
// IGNORE_BACKEND_K1: ANY
|
||||
// ISSUE: KT-60854
|
||||
// WITH_STDLIB
|
||||
// FULL_JDK
|
||||
|
||||
// MODULE: common
|
||||
// FILE: common.kt
|
||||
expect object A
|
||||
abstract class B : C()
|
||||
expect abstract class C()
|
||||
|
||||
// MODULE: intermediate()()(common)
|
||||
// FILE: intermediate.kt
|
||||
actual object A : B() {
|
||||
override val x: String get() = "OK"
|
||||
}
|
||||
|
||||
actual abstract class C {
|
||||
abstract val x: String
|
||||
}
|
||||
// MODULE: platform()()(intermediate)
|
||||
// FILE: platform.kt
|
||||
|
||||
fun box(): String = A.x
|
||||
Reference in New Issue
Block a user