diff --git a/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java index d65c727ac41..9f79e0b011b 100644 --- a/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests/org/jetbrains/kotlin/codegen/ir/FirBlackBoxCodegenTestGenerated.java @@ -11219,6 +11219,11 @@ public class FirBlackBoxCodegenTestGenerated extends AbstractFirBlackBoxCodegenT runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversion.kt"); } + @TestMetadata("basicFunInterfaceConversionClash.kt") + public void testBasicFunInterfaceConversionClash() throws Exception { + runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt"); + } + @TestMetadata("castFromAny.kt") public void testCastFromAny() throws Exception { runTest("compiler/testData/codegen/box/funInterface/castFromAny.kt"); diff --git a/compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt b/compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt new file mode 100644 index 00000000000..accf83cdd5b --- /dev/null +++ b/compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt @@ -0,0 +1,30 @@ +// !LANGUAGE: +NewInference +FunctionalInterfaceConversion +SamConversionPerArgument +SamConversionForKotlinFunctions +// SKIP_DCE_DRIVEN + +// FILE: lib.kt + +fun interface Foo { + fun invoke(): String +} + +// FILE: f1.kt + +fun foo1(f: Foo) = f.invoke() + +inline fun bar1(): String { + val f: () -> String = { "O" } + return foo1(Foo(f)) +} + +// FILE: f2.kt + +fun foo2(f: Foo) = f.invoke() + +inline fun bar2(): String { + val f: () -> String = { "K" } + return foo2(Foo(f)) +} + +// FILE: main.kt + +fun box(): String = bar1() + bar2() \ No newline at end of file diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java index 061dd20b39d..0e00d7aac65 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java @@ -12444,6 +12444,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversion.kt"); } + @TestMetadata("basicFunInterfaceConversionClash.kt") + public void testBasicFunInterfaceConversionClash() throws Exception { + runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt"); + } + @TestMetadata("castFromAny.kt") public void testCastFromAny() throws Exception { runTest("compiler/testData/codegen/box/funInterface/castFromAny.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 78987548aec..73608a839c6 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -12444,6 +12444,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversion.kt"); } + @TestMetadata("basicFunInterfaceConversionClash.kt") + public void testBasicFunInterfaceConversionClash() throws Exception { + runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt"); + } + @TestMetadata("castFromAny.kt") public void testCastFromAny() throws Exception { runTest("compiler/testData/codegen/box/funInterface/castFromAny.kt"); diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java index 993a1fdbe63..59d5533e3dd 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java @@ -11219,6 +11219,11 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversion.kt"); } + @TestMetadata("basicFunInterfaceConversionClash.kt") + public void testBasicFunInterfaceConversionClash() throws Exception { + runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt"); + } + @TestMetadata("castFromAny.kt") public void testCastFromAny() throws Exception { runTest("compiler/testData/codegen/box/funInterface/castFromAny.kt"); diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java index 4961b6d400c..20adc83f508 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java @@ -9619,6 +9619,11 @@ public class IrJsCodegenBoxES6TestGenerated extends AbstractIrJsCodegenBoxES6Tes runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversion.kt"); } + @TestMetadata("basicFunInterfaceConversionClash.kt") + public void testBasicFunInterfaceConversionClash() throws Exception { + runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt"); + } + @TestMetadata("castFromAny.kt") public void testCastFromAny() throws Exception { runTest("compiler/testData/codegen/box/funInterface/castFromAny.kt"); diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java index 71dee07d348..22a127fd9d8 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java @@ -9629,6 +9629,11 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest { runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversion.kt"); } + @TestMetadata("basicFunInterfaceConversionClash.kt") + public void testBasicFunInterfaceConversionClash() throws Exception { + runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt"); + } + @TestMetadata("castFromAny.kt") public void testCastFromAny() throws Exception { runTest("compiler/testData/codegen/box/funInterface/castFromAny.kt"); diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java index f3f43392215..dc4032bdd9b 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java @@ -9629,6 +9629,11 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest { runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversion.kt"); } + @TestMetadata("basicFunInterfaceConversionClash.kt") + public void testBasicFunInterfaceConversionClash() throws Exception { + runTest("compiler/testData/codegen/box/funInterface/basicFunInterfaceConversionClash.kt"); + } + @TestMetadata("castFromAny.kt") public void testCastFromAny() throws Exception { runTest("compiler/testData/codegen/box/funInterface/castFromAny.kt");