JVM_IR indy SAM conversions: update tests
KT-44278 KT-26060 KT-42621
This commit is contained in:
+6
@@ -19921,6 +19921,12 @@ public class FirBlackBoxCodegenTestGenerated extends AbstractFirBlackBoxCodegenT
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/constructorReference.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("covariantOverrideWithPrimitive.kt")
|
||||
public void testCovariantOverrideWithPrimitive() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/covariantOverrideWithPrimitive.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("genericFunInterface.kt")
|
||||
public void testGenericFunInterface() throws Exception {
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
// TARGET_BACKEND: JVM
|
||||
// JVM_TARGET: 1.8
|
||||
// SAM_CONVERSIONS: INDY
|
||||
|
||||
fun interface IFooAny {
|
||||
fun foo(): Any
|
||||
}
|
||||
|
||||
fun interface IFooInt : IFooAny {
|
||||
override fun foo(): Int
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val test = IFooInt { 42 }
|
||||
if (test.foo() != 42)
|
||||
return "Failed"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+33
-3
@@ -1,10 +1,40 @@
|
||||
@kotlin.Metadata
|
||||
final class SamAdapterForJavaInterfaceWithNullabilityKt$testNoAnnotation$1 {
|
||||
// source: 'samAdapterForJavaInterfaceWithNullability.kt'
|
||||
enclosing method SamAdapterForJavaInterfaceWithNullabilityKt.testNoAnnotation(Ljava/lang/String;)LJNoAnnotation;
|
||||
synthetic final field $s: java.lang.String
|
||||
inner (anonymous) class SamAdapterForJavaInterfaceWithNullabilityKt$testNoAnnotation$1
|
||||
method <init>(p0: java.lang.String): void
|
||||
public final method getString(): java.lang.String
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
final class SamAdapterForJavaInterfaceWithNullabilityKt$testNotNull$1 {
|
||||
// source: 'samAdapterForJavaInterfaceWithNullability.kt'
|
||||
enclosing method SamAdapterForJavaInterfaceWithNullabilityKt.testNotNull(Ljava/lang/String;)LJNotNull;
|
||||
synthetic final field $s: java.lang.String
|
||||
inner (anonymous) class SamAdapterForJavaInterfaceWithNullabilityKt$testNotNull$1
|
||||
method <init>(p0: java.lang.String): void
|
||||
public final @org.jetbrains.annotations.NotNull method getNullableString(): java.lang.String
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
final class SamAdapterForJavaInterfaceWithNullabilityKt$testNullable$1 {
|
||||
// source: 'samAdapterForJavaInterfaceWithNullability.kt'
|
||||
enclosing method SamAdapterForJavaInterfaceWithNullabilityKt.testNullable(Ljava/lang/String;)LJNullable;
|
||||
synthetic final field $s: java.lang.String
|
||||
inner (anonymous) class SamAdapterForJavaInterfaceWithNullabilityKt$testNullable$1
|
||||
method <init>(p0: java.lang.String): void
|
||||
public final @org.jetbrains.annotations.Nullable method getNullableString(): java.lang.String
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class SamAdapterForJavaInterfaceWithNullabilityKt {
|
||||
// source: 'samAdapterForJavaInterfaceWithNullability.kt'
|
||||
private final static method testNoAnnotation$lambda-2(p0: java.lang.String): java.lang.String
|
||||
inner (anonymous) class SamAdapterForJavaInterfaceWithNullabilityKt$testNoAnnotation$1
|
||||
inner (anonymous) class SamAdapterForJavaInterfaceWithNullabilityKt$testNotNull$1
|
||||
inner (anonymous) class SamAdapterForJavaInterfaceWithNullabilityKt$testNullable$1
|
||||
public final static @org.jetbrains.annotations.NotNull method testNoAnnotation(@org.jetbrains.annotations.NotNull p0: java.lang.String): JNoAnnotation
|
||||
private final static method testNotNull$lambda-1(p0: java.lang.String): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method testNotNull(@org.jetbrains.annotations.NotNull p0: java.lang.String): JNotNull
|
||||
private final static method testNullable$lambda-0(p0: java.lang.String): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method testNullable(@org.jetbrains.annotations.NotNull p0: java.lang.String): JNullable
|
||||
}
|
||||
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
@kotlin.Metadata
|
||||
public final class SamAdapterForJavaInterfaceWithNullabilityKt {
|
||||
// source: 'samAdapterForJavaInterfaceWithNullability.kt'
|
||||
private final static method testNoAnnotation$lambda-2(p0: java.lang.String): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method testNoAnnotation(@org.jetbrains.annotations.NotNull p0: java.lang.String): JNoAnnotation
|
||||
private final static method testNotNull$lambda-1(p0: java.lang.String): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method testNotNull(@org.jetbrains.annotations.NotNull p0: java.lang.String): JNotNull
|
||||
private final static method testNullable$lambda-0(p0: java.lang.String): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method testNullable(@org.jetbrains.annotations.NotNull p0: java.lang.String): JNullable
|
||||
}
|
||||
+10
@@ -15,6 +15,16 @@ fun test() {
|
||||
JFoo.foo2({ i++ }, null)
|
||||
}
|
||||
|
||||
// JVM_TEMPLATES:
|
||||
// @TestKt.class:
|
||||
// 1 NEW TestKt\$
|
||||
// 1 NEW kotlin/jvm/internal/Ref\$IntRef
|
||||
// 2 NEW
|
||||
// 0 IFNONNULL
|
||||
// 0 IFNULL
|
||||
// 1 ACONST_NULL
|
||||
|
||||
// JVM_IR_TEMPLATES:
|
||||
// @TestKt.class:
|
||||
// 0 NEW TestKt\$
|
||||
// 1 NEW kotlin/jvm/internal/Ref\$IntRef
|
||||
|
||||
@@ -12,5 +12,10 @@ fun test() {
|
||||
}
|
||||
|
||||
// Lambda inlined into run(), no wrapper class generated:
|
||||
// JVM_TEMPLATES:
|
||||
// 1 NEW
|
||||
// 0 INVOKEINTERFACE
|
||||
|
||||
// JVM_IR_TEMPLATES:
|
||||
// 0 NEW
|
||||
// 0 INVOKEINTERFACE
|
||||
|
||||
+6
@@ -19921,6 +19921,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/constructorReference.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("covariantOverrideWithPrimitive.kt")
|
||||
public void testCovariantOverrideWithPrimitive() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/covariantOverrideWithPrimitive.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("genericFunInterface.kt")
|
||||
public void testGenericFunInterface() throws Exception {
|
||||
|
||||
+6
@@ -19921,6 +19921,12 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/constructorReference.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("covariantOverrideWithPrimitive.kt")
|
||||
public void testCovariantOverrideWithPrimitive() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/covariantOverrideWithPrimitive.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("genericFunInterface.kt")
|
||||
public void testGenericFunInterface() throws Exception {
|
||||
|
||||
+5
@@ -16703,6 +16703,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/constructorReference.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("covariantOverrideWithPrimitive.kt")
|
||||
public void testCovariantOverrideWithPrimitive() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/covariantOverrideWithPrimitive.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("genericFunInterface.kt")
|
||||
public void testGenericFunInterface() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/genericFunInterface.kt");
|
||||
|
||||
Reference in New Issue
Block a user