[IR] Mark IrExpressionBodyImpl with an opt-in annotation

KT-59318
This commit is contained in:
Sergej Jaskiewicz
2023-12-07 19:40:15 +01:00
committed by Space Team
parent 2096d22e18
commit 1b557c1657
15 changed files with 48 additions and 42 deletions
@@ -81,7 +81,7 @@ abstract class AbstractAtomicfuIrBuilder(
visibility = DescriptorVisibilities.PRIVATE
origin = AbstractAtomicSymbols.ATOMICFU_GENERATED_FIELD
}.apply {
initializer = initValue?.let { IrExpressionBodyImpl(it) }
initializer = initValue?.let(context.irFactory::createExpressionBody)
this.annotations = annotations + atomicSymbols.volatileAnnotationConstructorCall
this.parent = parentContainer
}
@@ -103,7 +103,7 @@ abstract class AbstractAtomicfuIrBuilder(
visibility = DescriptorVisibilities.PRIVATE
origin = AbstractAtomicSymbols.ATOMICFU_GENERATED_FIELD
}.apply {
this.initializer = IrExpressionBodyImpl(
this.initializer = context.irFactory.createExpressionBody(
newAtomicArray(arrayClass, size, dispatchReceiver)
)
this.annotations = annotations
@@ -150,7 +150,7 @@ abstract class AbstractAtomicfuIrBuilder(
this.visibility = DescriptorVisibilities.PRIVATE
origin = AbstractAtomicSymbols.ATOMICFU_GENERATED_FIELD
}.apply {
initializer = IrExpressionBodyImpl(
initializer = context.irFactory.createExpressionBody(
IrConstructorCallImpl.fromSymbolOwner(
irClass.defaultType,
irClass.primaryConstructor!!.symbol
@@ -180,7 +180,7 @@ interface IrBuilderWithPluginContext {
field.startOffset,
field.endOffset
)
field.initializer = IrExpressionBodyImpl(builder.initializer())
field.initializer = factory.createExpressionBody(builder.initializer())
field.annotations += createAnnotationCallWithoutArgs(compilerContext.jvmFieldClassSymbol)
}
}