From 706a0d287ad0be9e85aaf74df6fd90a0706279b6 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Tue, 17 May 2022 20:37:00 +0300 Subject: [PATCH] [FIR2IR] Don't use source to determine that function is anonymous --- .../jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt index 2754e0f3f0c..9cd6bccca07 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt @@ -496,7 +496,7 @@ class Fir2IrDeclarationStorage( forceTopLevelPrivate: Boolean = false, ): IrSimpleFunction = convertCatching(function) { val simpleFunction = function as? FirSimpleFunction - val isLambda = function.source?.elementType.let { it == KtNodeTypes.FUNCTION_LITERAL || it == KtNodeTypes.LAMBDA_EXPRESSION } + val isLambda = function is FirAnonymousFunction && function.isLambda val updatedOrigin = when { isLambda -> IrDeclarationOrigin.LOCAL_FUNCTION_FOR_LAMBDA function.symbol.callableId.isKFunctionInvoke() -> IrDeclarationOrigin.FAKE_OVERRIDE