Skip to content

Commit d5a0296

Browse files
mglukhikhSpace Team
authored and
Space Team
committed
K2 plugins: set proper 'expect' flag for all member declarations
Related to KT-59299
1 parent 8e882ea commit d5a0296

File tree

4 files changed

+23
-4
lines changed

4 files changed

+23
-4
lines changed

compiler/fir/plugin-utils/src/org/jetbrains/kotlin/fir/plugin/ClassBuildingContext.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,11 @@ public fun FirExtension.createNestedClass(
136136
classKind: ClassKind = ClassKind.CLASS,
137137
config: ClassBuildingContext.() -> Unit = {}
138138
): FirRegularClass {
139-
return ClassBuildingContext(session, key, owner, owner.classId.createNestedClassId(name), classKind).apply(config).build()
139+
return ClassBuildingContext(session, key, owner, owner.classId.createNestedClassId(name), classKind).apply(config).apply {
140+
status {
141+
isExpect = owner.isExpect
142+
}
143+
}.build()
140144
}
141145

142146
/**

compiler/fir/plugin-utils/src/org/jetbrains/kotlin/fir/plugin/ConstructorBuildingContext.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import org.jetbrains.kotlin.fir.declarations.FirResolvePhase
1515
import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRef
1616
import org.jetbrains.kotlin.fir.declarations.builder.*
1717
import org.jetbrains.kotlin.fir.declarations.origin
18+
import org.jetbrains.kotlin.fir.declarations.utils.isExpect
1819
import org.jetbrains.kotlin.fir.declarations.utils.isInner
1920
import org.jetbrains.kotlin.fir.expressions.buildResolvedArgumentList
2021
import org.jetbrains.kotlin.fir.expressions.builder.buildDelegatedConstructorCall
@@ -122,7 +123,11 @@ public fun FirExtension.createConstructor(
122123
generateDelegatedNoArgConstructorCall: Boolean = false,
123124
config: ConstructorBuildingContext.() -> Unit = {}
124125
): FirConstructor {
125-
return ConstructorBuildingContext(session, key, owner, isPrimary).apply(config).build().also {
126+
return ConstructorBuildingContext(session, key, owner, isPrimary).apply(config).apply {
127+
status {
128+
isExpect = owner.isExpect
129+
}
130+
}.build().also {
126131
if (generateDelegatedNoArgConstructorCall) {
127132
it.generateNoArgDelegatingConstructorCall()
128133
}

compiler/fir/plugin-utils/src/org/jetbrains/kotlin/fir/plugin/PropertyBuildingContext.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import org.jetbrains.kotlin.fir.declarations.builder.buildReceiverParameter
1515
import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertyBackingField
1616
import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertyGetter
1717
import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertySetter
18+
import org.jetbrains.kotlin.fir.declarations.utils.isExpect
1819
import org.jetbrains.kotlin.fir.extensions.FirExtension
1920
import org.jetbrains.kotlin.fir.moduleData
2021
import org.jetbrains.kotlin.fir.resolve.defaultType
@@ -156,7 +157,11 @@ public fun FirExtension.createMemberProperty(
156157
config: PropertyBuildingContext.() -> Unit = {}
157158
): FirProperty {
158159
val callableId = CallableId(owner.classId, name)
159-
return PropertyBuildingContext(session, key, owner, callableId, returnTypeProvider, isVal, hasBackingField).apply(config).build()
160+
return PropertyBuildingContext(session, key, owner, callableId, returnTypeProvider, isVal, hasBackingField).apply(config).apply {
161+
status {
162+
isExpect = owner.isExpect
163+
}
164+
}.build()
160165
}
161166

162167
/**

compiler/fir/plugin-utils/src/org/jetbrains/kotlin/fir/plugin/SimpleFunctionBuildingContext.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.fir.declarations.FirTypeParameter
1313
import org.jetbrains.kotlin.fir.declarations.builder.buildReceiverParameter
1414
import org.jetbrains.kotlin.fir.declarations.builder.buildSimpleFunction
1515
import org.jetbrains.kotlin.fir.declarations.origin
16+
import org.jetbrains.kotlin.fir.declarations.utils.isExpect
1617
import org.jetbrains.kotlin.fir.extensions.FirExtension
1718
import org.jetbrains.kotlin.fir.moduleData
1819
import org.jetbrains.kotlin.fir.resolve.defaultType
@@ -113,7 +114,11 @@ public fun FirExtension.createMemberFunction(
113114
config: SimpleFunctionBuildingContext.() -> Unit = {}
114115
): FirSimpleFunction {
115116
val callableId = CallableId(owner.classId, name)
116-
return SimpleFunctionBuildingContext(session, key, owner, callableId, returnTypeProvider).apply(config).build()
117+
return SimpleFunctionBuildingContext(session, key, owner, callableId, returnTypeProvider).apply(config).apply {
118+
status {
119+
isExpect = owner.isExpect
120+
}
121+
}.build()
117122
}
118123

119124
/**

0 commit comments

Comments
 (0)