diff --git a/plugins/kotlin/fir/src/org/jetbrains/kotlin/idea/fir/intentions/HLAddNameToArgumentIntention.kt b/plugins/kotlin/fir/src/org/jetbrains/kotlin/idea/fir/intentions/HLAddNameToArgumentIntention.kt index d0c3285edd38..aef0c2e7a31b 100644 --- a/plugins/kotlin/fir/src/org/jetbrains/kotlin/idea/fir/intentions/HLAddNameToArgumentIntention.kt +++ b/plugins/kotlin/fir/src/org/jetbrains/kotlin/idea/fir/intentions/HLAddNameToArgumentIntention.kt @@ -41,7 +41,7 @@ class HLAddNameToArgumentIntention : companion object { fun getArgumentNameIfCanBeUsedForCalls(argument: KtValueArgument, resolvedCall: KtCall): Name? { - val valueParameterSymbol = resolvedCall.argumentMapping[argument] ?: return null + val valueParameterSymbol = resolvedCall.argumentMapping[argument.getArgumentExpression()] ?: return null if (valueParameterSymbol.isVararg) { if (argument.languageVersionSettings.supportsFeature(LanguageFeature.ProhibitAssigningSingleElementsToVarargsInNamedForm) && !argument.isSpread diff --git a/plugins/kotlin/uast/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinUastResolveProviderService.kt b/plugins/kotlin/uast/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinUastResolveProviderService.kt index c13a9996af37..fba25a3cbd12 100644 --- a/plugins/kotlin/uast/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinUastResolveProviderService.kt +++ b/plugins/kotlin/uast/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinUastResolveProviderService.kt @@ -33,10 +33,11 @@ interface FirKotlinUastResolveProviderService : BaseKotlinUastResolveProviderSer override fun convertValueArguments(ktCallElement: KtCallElement, parent: UElement): List? { analyseForUast(ktCallElement) { val argumentMapping = ktCallElement.resolveCall()?.argumentMapping ?: return null - return argumentMapping.entries.map { - val name = it.value.name.asString() - // TODO: it.key.isSpread() ? - KotlinUNamedExpression.create(name, it.key, parent) + return ktCallElement.valueArguments.map { + val parameter = argumentMapping[it.getArgumentExpression()] + val name = parameter?.name?.asString() + // TODO: parameter.isSpread() ? + KotlinUNamedExpression.create(name, it, parent) } } }