From 795d4bb7395da272cc15bdb31aa8d47256ad65a3 Mon Sep 17 00:00:00 2001 From: Ivan Kylchik Date: Mon, 3 Oct 2022 15:00:24 +0200 Subject: [PATCH] Make regenerated inlined classes public by default --- .../backend/common/lower/LocalDeclarationsLowering.kt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt index 38d1f8f96f1..0d539cd8be5 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalDeclarationsLowering.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.backend.common.lower import org.jetbrains.kotlin.backend.common.BodyLoweringPass import org.jetbrains.kotlin.backend.common.CommonBackendContext import org.jetbrains.kotlin.backend.common.descriptors.synthesizedString +import org.jetbrains.kotlin.backend.common.ir.isFunctionInlining import org.jetbrains.kotlin.backend.common.lower.inline.isInlineParameter import org.jetbrains.kotlin.backend.common.runOnFilePostfix import org.jetbrains.kotlin.descriptors.DescriptorVisibilities @@ -987,6 +988,11 @@ class LocalDeclarationsLowering( element.acceptChildren(this, data) } + override fun visitBlock(expression: IrBlock, data: Data) { + if (expression !is IrInlinedFunctionBlock) return super.visitBlock(expression, data) + super.visitBlock(expression, data.withInline(expression.isFunctionInlining())) + } + override fun visitFunctionExpression(expression: IrFunctionExpression, data: Data) { // TODO: For now IrFunctionExpression can only be encountered here if this was called from the inliner, // then all IrFunctionExpression will be replaced by IrFunctionReferenceExpression.