Add isSyntheic flag to IrDeclarationOrigin
This commit is contained in:
@@ -25,7 +25,7 @@ interface JvmLoweredDeclarationOrigin : IrDeclarationOrigin {
|
||||
object CLASS_STATIC_INITIALIZER : IrDeclarationOriginImpl("CLASS_STATIC_INITIALIZER")
|
||||
object DEFAULT_IMPLS : IrDeclarationOriginImpl("DEFAULT_IMPL")
|
||||
object FIELD_FOR_OUTER_THIS : IrDeclarationOriginImpl("FIELD_FOR_OUTER_THIS")
|
||||
object SYNTHETIC_ACCESSOR : IrDeclarationOriginImpl("SYNTHETIC_ACCESSOR")
|
||||
object SYNTHETIC_ACCESSOR : IrDeclarationOriginImpl("SYNTHETIC_ACCESSOR", isSynthetic = true)
|
||||
object TO_ARRAY : IrDeclarationOriginImpl("TO_ARRAY")
|
||||
object JVM_STATIC_WRAPPER : IrDeclarationOriginImpl("JVM_STATIC_WRAPPER")
|
||||
object JVM_OVERLOADS_WRAPPER : IrDeclarationOriginImpl("JVM_OVERLOADS_WRAPPER")
|
||||
|
||||
+2
-2
@@ -78,7 +78,7 @@ open class FunctionCodegen(private val irFunction: IrFunction, private val class
|
||||
else -> if (classCodegen.irClass.isJvmInterface && irFunction.body == null) Opcodes.ACC_ABSTRACT else 0 //TODO transform interface modality on lowering to DefaultImpls
|
||||
}
|
||||
val nativeFlag = if (irFunction.isExternal) Opcodes.ACC_NATIVE else 0
|
||||
val syntheticFlag = if (irFunction.origin == JvmLoweredDeclarationOrigin.SYNTHETIC_ACCESSOR) Opcodes.ACC_SYNTHETIC else 0
|
||||
val syntheticFlag = if (irFunction.origin.isSynthetic) Opcodes.ACC_SYNTHETIC else 0
|
||||
return visibility or
|
||||
modalityFlag or
|
||||
staticFlag or
|
||||
@@ -148,4 +148,4 @@ private fun createFrameMapWithReceivers(
|
||||
}
|
||||
|
||||
return frameMap
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,8 +45,13 @@ interface IrDeclarationOrigin {
|
||||
object FIELD_FOR_ENUM_ENTRY : IrDeclarationOriginImpl("FIELD_FOR_ENUM_ENTRY")
|
||||
object FIELD_FOR_ENUM_VALUES : IrDeclarationOriginImpl("FIELD_FOR_ENUM_VALUES")
|
||||
object FIELD_FOR_OBJECT_INSTANCE : IrDeclarationOriginImpl("FIELD_FOR_OBJECT_INSTANCE")
|
||||
|
||||
val isSynthetic: Boolean get() = false
|
||||
}
|
||||
|
||||
abstract class IrDeclarationOriginImpl(val name: String) : IrDeclarationOrigin {
|
||||
abstract class IrDeclarationOriginImpl(
|
||||
val name: String,
|
||||
override val isSynthetic: Boolean = false
|
||||
) : IrDeclarationOrigin {
|
||||
override fun toString(): String = name
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user