Added a test on possible name clash for SAM wrappers

This commit is contained in:
Igor Chevdar
2020-06-04 18:47:35 +05:00
parent 66bbd3e102
commit 8b37a094fe
8 changed files with 65 additions and 0 deletions
@@ -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");
@@ -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()
@@ -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");
@@ -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");
@@ -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");
@@ -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");
@@ -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");
@@ -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");