Add JVM ABI K1/K2 consistency tests
This commit is contained in:
committed by
Space Team
parent
5a1fb78fcd
commit
34bac48541
+13
@@ -0,0 +1,13 @@
|
||||
MODULE main
|
||||
CLASS MainKt$box$2.class
|
||||
Property: class.signature
|
||||
K1
|
||||
Lkotlin/jvm/internal/Lambda;Lkotlin/jvm/functions/Function1<LTestInterface<Ljava/lang/Object;>;Lkotlin/Unit;>;
|
||||
K2
|
||||
Lkotlin/jvm/internal/Lambda;Lkotlin/jvm/functions/Function1<LTestInterface<Ljava/lang/String;>;Lkotlin/Unit;>;
|
||||
METHOD invoke(LTestInterface;)V
|
||||
Property: method.signature
|
||||
K1
|
||||
(LTestInterface<Ljava/lang/Object;>;)V
|
||||
K2
|
||||
(LTestInterface<Ljava/lang/String;>;)V
|
||||
@@ -1,5 +1,6 @@
|
||||
// !LANGUAGE: +UnrestrictedBuilderInference
|
||||
// WITH_STDLIB
|
||||
// JVM_ABI_K1_K2_DIFF: KT-61909
|
||||
|
||||
// FILE: main.kt
|
||||
import kotlin.experimental.ExperimentalTypeInference
|
||||
|
||||
Vendored
+185
@@ -0,0 +1,185 @@
|
||||
MODULE main
|
||||
CLASS Tag.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */
|
||||
CLASS Tag2.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag2;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */
|
||||
K2
|
||||
kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */
|
||||
CLASS Tag3.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag3;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */
|
||||
CLASS Tag4.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag4;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */
|
||||
K2
|
||||
kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */
|
||||
CLASS Tag5.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, T#0> /* = Action2^<T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0> /* = Action2^<T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag5;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, T#0> /* = Action2^<T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0> /* = Action2^<T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<T#0, T#0> /* = Action2^<T#0> */
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0> /* = Action2^<T#0> */
|
||||
CLASS Tag6.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag6;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<in T#0, kotlin/Unit> /* = Action^<in T#0> */
|
||||
K2
|
||||
kotlin/Function1<in @kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<in T#0> */
|
||||
CLASS Tag7.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag7;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<T#0, kotlin/Unit> /* = Action^<T#0> */
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit> /* = Action^<T#0> */
|
||||
CLASS Tag8.class
|
||||
CLASS METADATA
|
||||
CONSTRUCTOR <init>(Lkotlin/jvm/functions/Function1;)V
|
||||
Property: class.metadata.constructor.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, T#0> /* = Action2^<T#0> */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0> /* = Action2^<T#0> */)
|
||||
FUNCTION copy(Lkotlin/jvm/functions/Function1;)LTag8;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(action: kotlin/Function1<T#0, T#0> /* = Action2^<T#0> */ /* = ... */)
|
||||
K2
|
||||
(action: kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0> /* = Action2^<T#0> */ /* = ... */)
|
||||
PROPERTY getAction()Lkotlin/jvm/functions/Function1;
|
||||
Property: class.metadata.property.returnType
|
||||
K1
|
||||
kotlin/Function1<T#0, T#0> /* = Action2^<T#0> */
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0> /* = Action2^<T#0> */
|
||||
CLASS CapturedTypesSubstitutionIntoAbbreviationKt.class
|
||||
PACKAGE METADATA
|
||||
TYPE ALIAS Action
|
||||
Property: class.metadata.typeAlias.underlyingType
|
||||
K1
|
||||
kotlin/Function1<T#0, kotlin/Unit>
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit>
|
||||
Property: class.metadata.typeAlias.expandedType
|
||||
K1
|
||||
kotlin/Function1<T#0, kotlin/Unit>
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, kotlin/Unit>
|
||||
TYPE ALIAS Action2
|
||||
Property: class.metadata.typeAlias.underlyingType
|
||||
K1
|
||||
kotlin/Function1<T#0, T#0>
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0>
|
||||
Property: class.metadata.typeAlias.expandedType
|
||||
K1
|
||||
kotlin/Function1<T#0, T#0>
|
||||
K2
|
||||
kotlin/Function1<@kotlin/UnsafeVariance T#0, T#0>
|
||||
+2
@@ -1,3 +1,5 @@
|
||||
// JVM_ABI_K1_K2_DIFF: KT-63858
|
||||
|
||||
typealias Action<K> = (@UnsafeVariance K) -> Unit
|
||||
typealias Action2<K> = (@UnsafeVariance K) -> K
|
||||
|
||||
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
MODULE main
|
||||
CLASS MyFinalClassI.class
|
||||
K1
|
||||
---
|
||||
K2
|
||||
test(I)Ljava/lang/Integer; [public]
|
||||
K1
|
||||
---
|
||||
K2
|
||||
testWithDefault(Ljava/lang/Integer;)Ljava/lang/Integer; [public]
|
||||
@@ -1,3 +1,5 @@
|
||||
// JVM_ABI_K1_K2_DIFF: KT-62781
|
||||
|
||||
// MODULE: InterfaceModule
|
||||
// FILE: MyInterface.kt
|
||||
interface MyInterface<T> {
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
MODULE main
|
||||
CLASS A.class
|
||||
CLASS METADATA
|
||||
FUNCTION foo(Ljava/lang/Object;)Ljava/lang/Object;
|
||||
Property: class.metadata.function.valueParameters
|
||||
K1
|
||||
(x: T#0)
|
||||
K2
|
||||
(x: @kotlin/UnsafeVariance T#0)
|
||||
@@ -1,3 +1,4 @@
|
||||
// JVM_ABI_K1_K2_DIFF: KT-63858
|
||||
class A<out K> {
|
||||
fun foo(x: @UnsafeVariance K): K = x
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user