[FIR] Don't traverse expect hierarchy to check DefaultArgumentsInExpectActualizedByFakeOverride

^KT-63860 Fixed
Review: https://jetbrains.team/p/kt/reviews/13334/timeline

The previous code was nonsense (I wrote it). It doesn't make sense to
subtract actualOverriddenDeclarations from expectOverriddenDeclarations.
Default parameters are mentioned on the expect side. So default params
in expect/actual supertypes won't be subtracted from
expectOverriddenDeclarations (but should be)
This commit is contained in:
Nikita Bobko
2023-12-01 16:21:01 +01:00
committed by Space Team
parent d0f87f9aba
commit 1aeefe6c33
8 changed files with 121 additions and 8 deletions
@@ -0,0 +1,26 @@
// FIR_IDENTICAL
// MODULE: m1-common
// FILE: common.kt
expect interface SdkBufferedSink {
public fun write(arg: String = "default")
}
abstract class AbstractBufferedSinkAdapter() : SdkBufferedSink {
override fun write(arg: String) {
}
}
expect class BufferedSinkAdapter() : SdkBufferedSink {
override fun write(arg: String)
}
// MODULE: m2-jvm()()(m1-common)
// FILE: jvm.kt
actual interface SdkBufferedSink {
public actual fun write(arg: String): Unit
}
actual class BufferedSinkAdapter actual constructor() : AbstractBufferedSinkAdapter(), SdkBufferedSink {
}
@@ -0,0 +1,26 @@
// FIR_IDENTICAL
// MODULE: m1-common
// FILE: common.kt
expect interface SdkBufferedSink {
public fun write(arg: String = "default")
}
abstract class AbstractBufferedSinkAdapter() {
fun write(arg: String) {
}
}
expect class BufferedSinkAdapter() : SdkBufferedSink {
override fun write(arg: String)
}
// MODULE: m2-jvm()()(m1-common)
// FILE: jvm.kt
actual interface SdkBufferedSink {
public actual fun write(arg: String): Unit
}
actual class BufferedSinkAdapter actual constructor() : AbstractBufferedSinkAdapter(), SdkBufferedSink {
}