[FIR] Properly load isExpect flag for constructors

^KT-57635 Fixed
This commit is contained in:
Dmitriy Novozhilov
2023-03-28 20:41:56 +03:00
committed by Space Team
parent 88d61173b6
commit b2e03035a9
4 changed files with 12 additions and 2 deletions
@@ -571,7 +571,9 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
Modality.FINAL,
visibility.toEffectiveVisibility(classBuilder.symbol)
).apply {
isExpect = Flags.IS_EXPECT_FUNCTION.get(flags)
// We don't store information about expect modifier on constructors
// It is inherited from containing class
isExpect = Flags.IS_EXPECT_CLASS.get(classProto.flags)
hasStableParameterNames = !Flags.IS_CONSTRUCTOR_WITH_NON_STABLE_PARAMETER_NAMES.get(flags)
isActual = false
isOverride = false
@@ -53,7 +53,7 @@ class CustomK2Tests : KGPBaseTest() {
}
@GradleTest
@DisplayName("HMPP compilation without JS target. KT-57376")
@DisplayName("HMPP compilation without JS target. KT-57376, KT-57635")
fun testHmppCompilationWithoutJsTarget(gradleVersion: GradleVersion) {
with(project("k2-mpp-without-js", gradleVersion)) {
val taskToExecute = ":compileIntermediateMainKotlinMetadata"
@@ -0,0 +1,4 @@
// ISSUE: KT-57635
package kt57635
actual class A actual constructor()