diff --git a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyCallExpressionHelper.kt b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyCallExpressionHelper.kt index 0d1a0ceb1b79..47ebf1be7a81 100644 --- a/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyCallExpressionHelper.kt +++ b/python/python-psi-impl/src/com/jetbrains/python/psi/impl/PyCallExpressionHelper.kt @@ -1018,7 +1018,19 @@ fun analyzeArguments( variadicPositionalArguments.clear() variadicKeywordArguments.clear() } - else if (allPositionalArguments.isEmpty()) { + else if (!allPositionalArguments.isEmpty()) { + val positionalArgument = allPositionalArguments.next() + if (positionalArgument != null) { + mappedParameters.put(positionalArgument, parameter) + if (positionalComponentsOfVariadicArguments.contains(positionalArgument)) { + parametersMappedToVariadicPositionalArguments.add(parameter) + } + } + else if (!parameter.hasDefaultValue()) { + unmappedParameters.add(parameter) + } + } + else { val keywordArgument = keywordArguments.removeKeywordArgument(parameterName) if (keywordArgument != null && !(!hasSlashParameter && !seenStarArgs && parameterName != null && isPrivate(parameterName))) { mappedParameters.put(keywordArgument, parameter) @@ -1036,18 +1048,6 @@ fun analyzeArguments( unmappedParameters.add(parameter) } } - else { - val positionalArgument = allPositionalArguments.next() - if (positionalArgument != null) { - mappedParameters.put(positionalArgument, parameter) - if (positionalComponentsOfVariadicArguments.contains(positionalArgument)) { - parametersMappedToVariadicPositionalArguments.add(parameter) - } - } - else if (!parameter.hasDefaultValue()) { - unmappedParameters.add(parameter) - } - } } else if (psi is PyTupleParameter) { val positionalArgument = allPositionalArguments.next()