IR: always serialize constant initializers for fields.
This commit is contained in:
committed by
TeamCityServer
parent
7e71bd8f1c
commit
13cf9329b2
+5
-1
@@ -1282,7 +1282,11 @@ open class IrFileSerializer(
|
|||||||
val proto = ProtoField.newBuilder()
|
val proto = ProtoField.newBuilder()
|
||||||
.setBase(serializeIrDeclarationBase(field, FieldFlags.encode(field)))
|
.setBase(serializeIrDeclarationBase(field, FieldFlags.encode(field)))
|
||||||
.setNameType(serializeNameAndType(field.name, field.type))
|
.setNameType(serializeNameAndType(field.name, field.type))
|
||||||
if (!skipMutableState && !(bodiesOnlyForInlines && (field.parent as? IrDeclarationWithVisibility)?.visibility != DescriptorVisibilities.LOCAL)) {
|
if (!skipMutableState &&
|
||||||
|
!(bodiesOnlyForInlines &&
|
||||||
|
(field.parent as? IrDeclarationWithVisibility)?.visibility != DescriptorVisibilities.LOCAL &&
|
||||||
|
(field.initializer?.expression !is IrConst<*>))
|
||||||
|
) {
|
||||||
val initializer = field.initializer?.expression
|
val initializer = field.initializer?.expression
|
||||||
if (initializer != null) {
|
if (initializer != null) {
|
||||||
proto.initializer = serializeIrExpressionBody(initializer)
|
proto.initializer = serializeIrExpressionBody(initializer)
|
||||||
|
|||||||
Reference in New Issue
Block a user