diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/ScopeFunctionConversionInspection.kt b/idea/src/org/jetbrains/kotlin/idea/inspections/ScopeFunctionConversionInspection.kt index e0a6dbc6c19..b6e83c9d6ed 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/ScopeFunctionConversionInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/ScopeFunctionConversionInspection.kt @@ -80,9 +80,9 @@ private fun getCounterpart(expression: KtCallExpression): String? { } val bindingContext = callee.analyze(BodyResolveMode.PARTIAL) val resolvedCall = callee.getResolvedCall(bindingContext) ?: return null - if (resolvedCall.resultingDescriptor.fqNameSafe.asString() == "kotlin.$calleeName" && - nameResolvesToStdlib(expression, bindingContext, counterpartName) - ) { + val descriptor = resolvedCall.resultingDescriptor + if (descriptor.dispatchReceiverParameter == null && descriptor.extensionReceiverParameter == null) return null + if (descriptor.fqNameSafe.asString() == "kotlin.$calleeName" && nameResolvesToStdlib(expression, bindingContext, counterpartName)) { return counterpartName } } diff --git a/idea/testData/inspectionsLocal/scopeFunctions/runToLet/noReceiver.kt b/idea/testData/inspectionsLocal/scopeFunctions/runToLet/noReceiver.kt new file mode 100644 index 00000000000..552358593a4 --- /dev/null +++ b/idea/testData/inspectionsLocal/scopeFunctions/runToLet/noReceiver.kt @@ -0,0 +1,5 @@ +// WITH_RUNTIME +// PROBLEM: none +fun hello() { + run { } +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java index a191d7a88d9..445671792cd 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/inspections/LocalInspectionTestGenerated.java @@ -12246,6 +12246,11 @@ public class LocalInspectionTestGenerated extends AbstractLocalInspectionTest { runTest("idea/testData/inspectionsLocal/scopeFunctions/runToLet/capturedIt.kt"); } + @TestMetadata("noReceiver.kt") + public void testNoReceiver() throws Exception { + runTest("idea/testData/inspectionsLocal/scopeFunctions/runToLet/noReceiver.kt"); + } + @TestMetadata("simple.kt") public void testSimple() throws Exception { runTest("idea/testData/inspectionsLocal/scopeFunctions/runToLet/simple.kt");