From d477d9eb4315b1d45e52597ed53dcee4b7374766 Mon Sep 17 00:00:00 2001 From: Dmitry Petrov Date: Tue, 23 Jun 2020 13:13:36 +0300 Subject: [PATCH] JVM_IR KT-37005: no delegates for @InlineOnly funs in multifile facades --- .../kotlin/backend/jvm/lower/GenerateMultifileFacades.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/GenerateMultifileFacades.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/GenerateMultifileFacades.kt index 845e76b1800..e2df3cf9328 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/GenerateMultifileFacades.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/lower/GenerateMultifileFacades.kt @@ -42,6 +42,7 @@ import org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid import org.jetbrains.kotlin.load.java.JavaVisibilities import org.jetbrains.kotlin.name.Name +import org.jetbrains.kotlin.resolve.inline.INLINE_ONLY_ANNOTATION_FQ_NAME import org.jetbrains.kotlin.resolve.jvm.JvmClassName internal val generateMultifileFacadesPhase = namedIrModulePhase( @@ -152,7 +153,9 @@ private fun generateMultifileFacades( moveFieldsOfConstProperties(partClass, facadeClass) for (member in partClass.declarations) { - if (member is IrSimpleFunction) { + if (member is IrSimpleFunction && + !member.hasAnnotation(INLINE_ONLY_ANNOTATION_FQ_NAME) + ) { val newMember = member.createMultifileDelegateIfNeeded(context, facadeClass, shouldGeneratePartHierarchy) if (newMember != null) { functionDelegates[member] = newMember