[FIR] Fix missing ACTUAL_WITHOUT_EXPECT when expect is fake-override

^KT-65270 Fixed
KT review: https://jetbrains.team/p/kt/reviews/14064/timeline
IJ review: https://jetbrains.team/p/ij/reviews/124657/timeline
This commit is contained in:
Nikita Bobko
2024-01-24 20:37:16 +01:00
committed by teamcity
parent c214c5445a
commit 19c46662c6
8 changed files with 100 additions and 1 deletions
@@ -0,0 +1,33 @@
// MODULE: m1-common
// FILE: common.kt
fun foo() {}
class Foo
open class Base {
open fun foo() {}
}
expect class Bar : Base {
}
expect open class ExpectBase {
open fun foo()
}
expect class Baz : ExpectBase
// MODULE: m1-jvm()()(m1-common)
// FILE: jvm.kt
actual fun <!ACTUAL_WITHOUT_EXPECT!>foo<!>() {}
actual class <!ACTUAL_WITHOUT_EXPECT!>Foo<!>
actual class Bar : Base() {
actual override fun <!ACTUAL_WITHOUT_EXPECT!>foo<!>() {}
}
actual open class ExpectBase {
actual open fun foo() {}
}
actual class Baz : ExpectBase() {
actual override fun <!ACTUAL_WITHOUT_EXPECT!>foo<!>() {}
}
@@ -0,0 +1,33 @@
// MODULE: m1-common
// FILE: common.kt
<!CONFLICTING_OVERLOADS{JVM}!>fun foo()<!> {}
class <!PACKAGE_OR_CLASSIFIER_REDECLARATION{JVM}!>Foo<!>
open class Base {
open fun foo() {}
}
expect class Bar : Base {
}
expect open class ExpectBase {
open fun foo()
}
expect class Baz : ExpectBase
// MODULE: m1-jvm()()(m1-common)
// FILE: jvm.kt
<!CONFLICTING_OVERLOADS!>actual fun <!ACTUAL_WITHOUT_EXPECT!>foo<!>()<!> {}
actual class <!ACTUAL_WITHOUT_EXPECT, PACKAGE_OR_CLASSIFIER_REDECLARATION!>Foo<!>
actual class Bar : Base() {
actual override fun <!ACTUAL_WITHOUT_EXPECT!>foo<!>() {}
}
actual open class ExpectBase {
actual open fun foo() {}
}
actual class Baz : ExpectBase() {
actual override fun <!ACTUAL_WITHOUT_EXPECT!>foo<!>() {}
}