From 458f89ef3392716de2ae4771125e055c6f32e5ab Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 27 Aug 2020 17:37:19 +0300 Subject: [PATCH] [FIR] Signature composer: return null signature for local declarations --- .../kotlin/fir/signaturer/FirBasedSignatureComposer.kt | 4 ++++ .../provideDelegate/provideDelegateByExtensionFunction.kt | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt index 873a732952b..98f4ce7ca64 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt @@ -62,6 +62,10 @@ class FirBasedSignatureComposer(private val mangler: FirMangler) : Fir2IrSignatu override fun composeSignature(declaration: FirDeclaration): IdSignature? { if (declaration is FirAnonymousObject || declaration is FirAnonymousFunction) return null + if (declaration is FirRegularClass && declaration.classId.isLocal) return null + if (declaration is FirCallableMemberDeclaration<*>) { + if (declaration.visibility == Visibilities.Local || declaration.symbol.callableId.classId?.isLocal == true) return null + } val builder = SignatureBuilder() try { declaration.accept(builder) diff --git a/compiler/testData/codegen/box/delegatedProperty/provideDelegate/provideDelegateByExtensionFunction.kt b/compiler/testData/codegen/box/delegatedProperty/provideDelegate/provideDelegateByExtensionFunction.kt index 89a291e8423..9b5938014a1 100644 --- a/compiler/testData/codegen/box/delegatedProperty/provideDelegate/provideDelegateByExtensionFunction.kt +++ b/compiler/testData/codegen/box/delegatedProperty/provideDelegate/provideDelegateByExtensionFunction.kt @@ -1,5 +1,3 @@ -// IGNORE_BACKEND_FIR: JVM_IR - import kotlin.reflect.KProperty class TypeInference {