JVM IR: Mark Enum.$VALUES field as synthetic (#2957)

This commit is contained in:
Steven Schäfer
2020-01-08 13:17:58 +01:00
committed by Alexander Udalov
parent 6b5d92a693
commit 7f319c18de
5 changed files with 22 additions and 2 deletions
@@ -257,7 +257,6 @@ private class EnumClassLowering(val context: JvmBackendContext) : ClassLoweringP
val irValuesInitializer = createSyntheticValuesFieldInitializerExpression()
val descriptor = WrappedFieldDescriptor()
// TODO: mark ACC_SYNTHETIC
return IrFieldImpl(
UNDEFINED_OFFSET, UNDEFINED_OFFSET, IrDeclarationOrigin.FIELD_FOR_ENUM_VALUES,
IrFieldSymbolImpl(descriptor),
@@ -49,7 +49,7 @@ interface IrDeclarationOrigin {
object BRIDGE_SPECIAL: IrDeclarationOriginImpl("BRIDGE_SPECIAL")
object FIELD_FOR_ENUM_ENTRY : IrDeclarationOriginImpl("FIELD_FOR_ENUM_ENTRY")
object FIELD_FOR_ENUM_VALUES : IrDeclarationOriginImpl("FIELD_FOR_ENUM_VALUES")
object FIELD_FOR_ENUM_VALUES : IrDeclarationOriginImpl("FIELD_FOR_ENUM_VALUES", isSynthetic = true)
object FIELD_FOR_OBJECT_INSTANCE : IrDeclarationOriginImpl("FIELD_FOR_OBJECT_INSTANCE")
val isSynthetic: Boolean get() = false