diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFirTestdataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFirTestdataTestGenerated.java index 42f6e818205..4e855d8a8ca 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFirTestdataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFirTestdataTestGenerated.java @@ -3152,6 +3152,24 @@ public class DiagnosticCompilerTestFirTestdataTestGenerated extends AbstractDiag runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invoke.kt"); } + @Test + @TestMetadata("invokeKFunction.kt") + public void testInvokeKFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.kt"); + } + + @Test + @TestMetadata("invokeKFunctionFromMethodReference.kt") + public void testInvokeKFunctionFromMethodReference() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.kt"); + } + + @Test + @TestMetadata("invokeKSuspendFunction.kt") + public void testInvokeKSuspendFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.kt"); + } + @Test @TestMetadata("lambda.kt") public void testLambda() throws Exception { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFirTestDataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFirTestDataTestGenerated.java index c8ce5f8c472..0563bfa62e7 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFirTestDataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFirTestDataTestGenerated.java @@ -3152,6 +3152,24 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFirTestDataTestGenerated runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invoke.kt"); } + @Test + @TestMetadata("invokeKFunction.kt") + public void testInvokeKFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.kt"); + } + + @Test + @TestMetadata("invokeKFunctionFromMethodReference.kt") + public void testInvokeKFunctionFromMethodReference() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.kt"); + } + + @Test + @TestMetadata("invokeKSuspendFunction.kt") + public void testInvokeKSuspendFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.kt"); + } + @Test @TestMetadata("lambda.kt") public void testLambda() throws Exception { diff --git a/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.fir.txt b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.fir.txt new file mode 100644 index 00000000000..1b6cb4a0bcd --- /dev/null +++ b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.fir.txt @@ -0,0 +1,5 @@ +FILE: invokeKFunction.kt + public final fun foo(action: R|kotlin/reflect/KFunction1|): R|kotlin/Int| { + lval localAction: R|kotlin/reflect/KFunction1| = R|/action| + ^foo R|/localAction|.R|SubstitutionOverride|(String(hello)) + } diff --git a/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.kt b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.kt new file mode 100644 index 00000000000..c3c6467b022 --- /dev/null +++ b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.kt @@ -0,0 +1,8 @@ +// WITH_STDLIB +import kotlin.reflect.KFunction1 + +fun foo(action: KFunction1): Int { + val localAction = action + + return localAction("hello") +} \ No newline at end of file diff --git a/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.fir.txt b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.fir.txt new file mode 100644 index 00000000000..15438ea1d2f --- /dev/null +++ b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.fir.txt @@ -0,0 +1,9 @@ +FILE: invokeKFunctionFromMethodReference.kt + public final fun foo(): R|kotlin/Int| { + local final fun action(s: R|kotlin/String|): R|kotlin/Int| { + ^action R|/s|.R|kotlin/text/toInt|() + } + + lval localAction: R|kotlin/reflect/KFunction1| = ::R|/action| + ^foo R|/localAction|.R|SubstitutionOverride|(String(hello)) + } diff --git a/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.kt b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.kt new file mode 100644 index 00000000000..f2ea470d5f6 --- /dev/null +++ b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.kt @@ -0,0 +1,8 @@ +// WITH_STDLIB +fun foo(): Int { + fun action(s: String): Int = s.toInt() + + val localAction = ::action + + return localAction("hello") +} \ No newline at end of file diff --git a/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.fir.txt b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.fir.txt new file mode 100644 index 00000000000..5ab14bbd41f --- /dev/null +++ b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.fir.txt @@ -0,0 +1,5 @@ +FILE: invokeKSuspendFunction.kt + public final suspend fun foo(action: R|kotlin/reflect/KSuspendFunction1|): R|kotlin/Int| { + lval localAction: R|kotlin/reflect/KSuspendFunction1| = R|/action| + ^foo R|/localAction|.R|SubstitutionOverride|(String(hello)) + } diff --git a/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.kt b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.kt new file mode 100644 index 00000000000..76403dd73cb --- /dev/null +++ b/compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.kt @@ -0,0 +1,8 @@ +// WITH_STDLIB +import kotlin.reflect.KSuspendFunction1 + +suspend fun foo(action: KSuspendFunction1): Int { + val localAction = action + + return localAction("hello") +} \ No newline at end of file diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeDiagnosticsTestGenerated.java index 635e7f58b40..dd5b7a22222 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeDiagnosticsTestGenerated.java @@ -3152,6 +3152,24 @@ public class FirLightTreeDiagnosticsTestGenerated extends AbstractFirLightTreeDi runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invoke.kt"); } + @Test + @TestMetadata("invokeKFunction.kt") + public void testInvokeKFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.kt"); + } + + @Test + @TestMetadata("invokeKFunctionFromMethodReference.kt") + public void testInvokeKFunctionFromMethodReference() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.kt"); + } + + @Test + @TestMetadata("invokeKSuspendFunction.kt") + public void testInvokeKSuspendFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.kt"); + } + @Test @TestMetadata("lambda.kt") public void testLambda() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiDiagnosticTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiDiagnosticTestGenerated.java index fae370ea502..7bfa74063f7 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiDiagnosticTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiDiagnosticTestGenerated.java @@ -3152,6 +3152,24 @@ public class FirPsiDiagnosticTestGenerated extends AbstractFirPsiDiagnosticTest runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invoke.kt"); } + @Test + @TestMetadata("invokeKFunction.kt") + public void testInvokeKFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunction.kt"); + } + + @Test + @TestMetadata("invokeKFunctionFromMethodReference.kt") + public void testInvokeKFunctionFromMethodReference() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKFunctionFromMethodReference.kt"); + } + + @Test + @TestMetadata("invokeKSuspendFunction.kt") + public void testInvokeKSuspendFunction() throws Exception { + runTest("compiler/fir/analysis-tests/testData/resolve/extendedCheckers/unused/invokeKSuspendFunction.kt"); + } + @Test @TestMetadata("lambda.kt") public void testLambda() throws Exception {