From 7e4f94ed2ce15ac9a605fbb8bf093f31c8c0aeec Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Mon, 18 Apr 2022 00:32:46 +0500 Subject: [PATCH] [IR] Fix for per-file caches support in K/N --- .../kotlin/backend/common/lower/LocalDeclarationsLowering.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 92e884a8614..a2939b8cc13 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 @@ -915,7 +915,7 @@ class LocalDeclarationsLowering( } private fun collectLocalDeclarations() { - val enclosingFile by lazy { container.file } + val enclosingPackageFragment = container.getPackageFragment() val enclosingClass = run { var currentParent = container as? IrClass ?: container.parent while (currentParent is IrDeclaration && currentParent !is IrClass) { @@ -956,7 +956,7 @@ class LocalDeclarationsLowering( val enclosingScope = data.currentClass ?: enclosingClass?.scopeWithCounter // File is required for K/N because file declarations are not split by classes. - ?: enclosingFile.scopeWithCounter + ?: enclosingPackageFragment.scopeWithCounter val index = if (declaration.name.isSpecial || declaration.name in enclosingScope.usedLocalFunctionNames) enclosingScope.counter++