From aa8d71f6b9aef7c5f8562b776fc0c87f482fa479 Mon Sep 17 00:00:00 2001 From: Mikhael Bogdanov Date: Wed, 30 May 2018 17:11:09 +0200 Subject: [PATCH] Support synthetic flag --- .../jetbrains/kotlin/backend/jvm/codegen/FunctionCodegen.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/FunctionCodegen.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/FunctionCodegen.kt index 57352dad4dc..8b15c1c3dd8 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/FunctionCodegen.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/FunctionCodegen.kt @@ -17,6 +17,7 @@ package org.jetbrains.kotlin.backend.jvm.codegen import org.jetbrains.kotlin.backend.common.lower.DECLARATION_ORIGIN_FUNCTION_FOR_DEFAULT_PARAMETER +import org.jetbrains.kotlin.backend.jvm.JvmLoweredDeclarationOrigin import org.jetbrains.kotlin.backend.jvm.descriptors.JvmDescriptorWithExtraFlags import org.jetbrains.kotlin.builtins.KotlinBuiltIns.FQ_NAMES import org.jetbrains.kotlin.codegen.* @@ -91,7 +92,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 return visibility or modalityFlag or staticFlag or @@ -99,6 +100,7 @@ open class FunctionCodegen(private val irFunction: IrFunction, private val class deprecation or nativeFlag or bridgeFlag or + syntheticFlag or (if (descriptor is JvmDescriptorWithExtraFlags) descriptor.extraFlags else 0) }