Enable lightweight lambdas (aka invokedynamic) since 2.0
#KT-45375 Fixed #KT-58173 Open
This commit is contained in:
committed by
Space Team
parent
b1b33475fa
commit
3f034e8b67
-1
@@ -1,6 +1,5 @@
|
||||
public final class CodeFragment {
|
||||
// source: 'fragment.kt'
|
||||
inner (anonymous) class ContextKt$test$1
|
||||
public method <init>(): void
|
||||
public final static method run(p0: java.lang.String): void
|
||||
}
|
||||
|
||||
-1
@@ -1,6 +1,5 @@
|
||||
public final class CodeFragment {
|
||||
// source: 'fragment.kt'
|
||||
inner (anonymous) class ContextKt$test$1
|
||||
public method <init>(): void
|
||||
public final static method run(p0: java.lang.String): void
|
||||
}
|
||||
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
@kotlin.coroutines.jvm.internal.DebugMetadata
|
||||
@kotlin.Metadata
|
||||
final class OnInlineArgumentKt$box$1 {
|
||||
// source: 'onInlineArgument.kt'
|
||||
enclosing method OnInlineArgumentKt.box()Ljava/lang/String;
|
||||
synthetic final field $lambda: kotlin.jvm.functions.Function1
|
||||
synthetic final field $test: kotlin.jvm.internal.Ref$ObjectRef
|
||||
field label: int
|
||||
inner (anonymous) class OnInlineArgumentKt$box$1
|
||||
method <init>(p0: kotlin.jvm.internal.Ref$ObjectRef, p1: kotlin.jvm.functions.Function1, p2: kotlin.coroutines.Continuation): void
|
||||
public final method create(p0: kotlin.coroutines.Continuation): kotlin.coroutines.Continuation
|
||||
public synthetic bridge method invoke(p0: java.lang.Object): java.lang.Object
|
||||
public final method invoke(p0: kotlin.coroutines.Continuation): java.lang.Object
|
||||
public final method invokeSuspend(p0: java.lang.Object): java.lang.Object
|
||||
public final inner class kotlin/jvm/internal/Ref$ObjectRef
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class OnInlineArgumentKt {
|
||||
// source: 'onInlineArgument.kt'
|
||||
inner (anonymous) class OnInlineArgumentKt$box$1
|
||||
private final static method box$lambda$0(p0: java.lang.String): java.lang.String
|
||||
public final static @org.jetbrains.annotations.NotNull method box(): java.lang.String
|
||||
private final static method runS$$forInline(p0: kotlin.jvm.functions.Function2, p1: kotlin.coroutines.Continuation): java.lang.Object
|
||||
public final static @org.jetbrains.annotations.Nullable method runS(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function2, @org.jetbrains.annotations.NotNull p1: kotlin.coroutines.Continuation): java.lang.Object
|
||||
public final inner class kotlin/jvm/internal/Ref$ObjectRef
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+1264
File diff suppressed because it is too large
Load Diff
+27
@@ -0,0 +1,27 @@
|
||||
// FILE: 1.kt
|
||||
|
||||
// FILE: 2.kt
|
||||
SMAP
|
||||
2.kt
|
||||
Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
+ 2 1.kt
|
||||
test/B
|
||||
+ 3 1.kt
|
||||
test/A
|
||||
*L
|
||||
1#1,37:1
|
||||
15#2,2:38
|
||||
9#3,2:40
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
27#1:38,2
|
||||
29#1:40,2
|
||||
*E
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// TARGET_BACKEND: JVM
|
||||
// WITH_REFLECT
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package test
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// FILE: 1.kt
|
||||
package test
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// FILE: 1.kt
|
||||
package test
|
||||
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package test
|
||||
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package test
|
||||
|
||||
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// FILE: 1.kt
|
||||
|
||||
|
||||
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// FILE: 1.kt
|
||||
|
||||
|
||||
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// FILE: 1.kt
|
||||
|
||||
|
||||
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// FILE: 1.kt
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// WITH_REFLECT
|
||||
// TARGET_BACKEND: JVM
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
package test
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package zzz
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package test
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// NO_CHECK_LAMBDA_INLINING
|
||||
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package builders
|
||||
|
||||
+1
-1
@@ -1,8 +1,8 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
// NO_SMAP_DUMP
|
||||
package test
|
||||
|
||||
|
||||
inline fun annotatedWith2(crossinline predicate: () -> Boolean)
|
||||
{ val lambda = { any { predicate() } }; lambda() }
|
||||
|
||||
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// SEPARATE_SMAP_DUMPS
|
||||
// SKIP_INLINE_CHECK_IN: lParams$default
|
||||
|
||||
|
||||
+12
-12
@@ -7,7 +7,7 @@ Kotlin
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
1#1,40:1
|
||||
1#1,41:1
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -20,14 +20,14 @@ test/_1Kt$lParams$1$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,40:1
|
||||
31#2:41
|
||||
1#1,41:1
|
||||
32#2:42
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
34#1:41
|
||||
35#1:42
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -40,8 +40,8 @@ test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
34#2:41
|
||||
1#1,41:1
|
||||
35#2:42
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -52,7 +52,7 @@ Kotlin
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
1#1,41:1
|
||||
*E
|
||||
|
||||
// FILE: 2.kt
|
||||
@@ -68,15 +68,15 @@ test/_1Kt
|
||||
+ 3 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
1#1,46:1
|
||||
33#2,5:47
|
||||
34#3:52
|
||||
1#1,47:1
|
||||
34#2,5:48
|
||||
35#3:53
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
44#1:47,5
|
||||
44#1:52
|
||||
45#1:48,5
|
||||
45#1:53
|
||||
*E
|
||||
|
||||
|
||||
+17
-17
@@ -7,7 +7,7 @@ Kotlin
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
1#1,40:1
|
||||
1#1,41:1
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -20,14 +20,14 @@ test/_1Kt$lParams$1$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,40:1
|
||||
31#2:41
|
||||
1#1,41:1
|
||||
32#2:42
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
34#1:41
|
||||
35#1:42
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -40,8 +40,8 @@ test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
34#2:41
|
||||
1#1,41:1
|
||||
35#2:42
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -52,7 +52,7 @@ Kotlin
|
||||
+ 1 1.kt
|
||||
test/_1Kt$kValue$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
1#1,41:1
|
||||
*E
|
||||
|
||||
// FILE: 2.kt
|
||||
@@ -68,16 +68,16 @@ test/_1Kt
|
||||
+ 3 1.kt
|
||||
test/_1Kt$lParams$1
|
||||
*L
|
||||
1#1,46:1
|
||||
33#2,5:47
|
||||
34#3:52
|
||||
1#1,47:1
|
||||
34#2,5:48
|
||||
35#3:53
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
44#1:47,5
|
||||
44#1:52
|
||||
45#1:48,5
|
||||
45#1:53
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -90,14 +90,14 @@ test/_1Kt$lParams$1$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,40:1
|
||||
31#2:41
|
||||
1#1,41:1
|
||||
32#2:42
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
34#1:41
|
||||
35#1:42
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -110,7 +110,7 @@ test/_1Kt$kValue$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt$lParams$1$lambda$1
|
||||
*L
|
||||
1#1,40:1
|
||||
34#2:41
|
||||
1#1,41:1
|
||||
35#2:42
|
||||
*E
|
||||
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
// SEPARATE_SMAP_DUMPS
|
||||
// SKIP_INLINE_CHECK_IN: lParams$default
|
||||
// IGNORE_BACKEND: JS
|
||||
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package test
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
// SEPARATE_SMAP_DUMPS
|
||||
// SKIP_INLINE_CHECK_IN: lParams$default
|
||||
// IGNORE_BACKEND: JS
|
||||
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package test
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// SKIP_INLINE_CHECK_IN: inlineFun$default
|
||||
|
||||
// FILE: 1.kt
|
||||
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// IGNORE_INLINER_K2: IR
|
||||
// FILE: 1.kt
|
||||
|
||||
package test
|
||||
|
||||
+12
-12
@@ -9,14 +9,14 @@ test/_1Kt$test$lambda$1
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,18:1
|
||||
6#2,3:19
|
||||
1#1,19:1
|
||||
7#2,3:20
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$test$lambda$1
|
||||
*L
|
||||
13#1:19,3
|
||||
14#1:20,3
|
||||
*E
|
||||
|
||||
// FILE: 2.kt
|
||||
@@ -30,14 +30,14 @@ _2Kt
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,31:1
|
||||
11#2,6:32
|
||||
1#1,32:1
|
||||
12#2,6:33
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
25#1:32,6
|
||||
26#1:33,6
|
||||
*E
|
||||
|
||||
SMAP
|
||||
@@ -52,16 +52,16 @@ test/_1Kt
|
||||
+ 3 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
1#1,18:1
|
||||
6#2,2:19
|
||||
8#2:23
|
||||
26#3,2:21
|
||||
1#1,19:1
|
||||
7#2,2:20
|
||||
9#2:24
|
||||
27#3,2:22
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 1.kt
|
||||
test/_1Kt$test$lambda$1
|
||||
*L
|
||||
13#1:19,2
|
||||
13#1:23
|
||||
14#1:20,2
|
||||
14#1:24
|
||||
*E
|
||||
|
||||
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
// FILE: 1.kt
|
||||
|
||||
// FILE: 2.kt
|
||||
SMAP
|
||||
2.kt
|
||||
Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,36:1
|
||||
6#2,4:37
|
||||
12#2,3:41
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
26#1:37,4
|
||||
28#1:41,3
|
||||
*E
|
||||
|
||||
Vendored
+25
@@ -0,0 +1,25 @@
|
||||
// FILE: 1.kt
|
||||
|
||||
// FILE: 2.kt
|
||||
SMAP
|
||||
2.kt
|
||||
Kotlin
|
||||
*S Kotlin
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
+ 2 1.kt
|
||||
test/_1Kt
|
||||
*L
|
||||
1#1,36:1
|
||||
16#1,3:41
|
||||
6#2,4:37
|
||||
*S KotlinDebug
|
||||
*F
|
||||
+ 1 2.kt
|
||||
_2Kt
|
||||
*L
|
||||
28#1:41,3
|
||||
26#1:37,4
|
||||
*E
|
||||
|
||||
Vendored
+19
@@ -0,0 +1,19 @@
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'accessorForProtectedPropertyWithPrivateSetter.kt'
|
||||
public method <init>(): void
|
||||
private final static method test$lambda$0(p0: B): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method test(): kotlin.jvm.functions.Function0
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public class a/A {
|
||||
// source: 'a.kt'
|
||||
private @org.jetbrains.annotations.NotNull field vk: java.lang.String
|
||||
private @org.jetbrains.annotations.NotNull field vo: java.lang.String
|
||||
public method <init>(): void
|
||||
private final static method fk$lambda$0(p0: a.A): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method fk(): kotlin.jvm.functions.Function0
|
||||
protected final @org.jetbrains.annotations.NotNull method getVk(): java.lang.String
|
||||
protected final @org.jetbrains.annotations.NotNull method getVo(): java.lang.String
|
||||
}
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
@kotlin.Metadata
|
||||
public final class B$test$1 {
|
||||
// source: 'accessorForProtectedPropertyWithPrivateSetterInObjectLiteral.kt'
|
||||
enclosing method B.test()Ljava/lang/Object;
|
||||
synthetic final field this$0: B
|
||||
inner (anonymous) class B$test$1
|
||||
method <init>(p0: B): void
|
||||
public method toString(): java.lang.String
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'accessorForProtectedPropertyWithPrivateSetterInObjectLiteral.kt'
|
||||
inner (anonymous) class B$test$1
|
||||
public method <init>(): void
|
||||
public synthetic final static method access$getVo(p0: B): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method test(): java.lang.Object
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public class a/A {
|
||||
// source: 'a.kt'
|
||||
private @org.jetbrains.annotations.NotNull field vk: java.lang.String
|
||||
private @org.jetbrains.annotations.NotNull field vo: java.lang.String
|
||||
public method <init>(): void
|
||||
private final static method fk$lambda$0(p0: a.A): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method fk(): kotlin.jvm.functions.Function0
|
||||
protected final @org.jetbrains.annotations.NotNull method getVk(): java.lang.String
|
||||
protected final @org.jetbrains.annotations.NotNull method getVo(): java.lang.String
|
||||
}
|
||||
compiler/testData/codegen/bytecodeListing/accessorsForProtectedStaticJavaFieldInOtherPackage.fir.txt
Vendored
+16
@@ -0,0 +1,16 @@
|
||||
@kotlin.Metadata
|
||||
public final class test/C {
|
||||
// source: 'C.kt'
|
||||
public method <init>(): void
|
||||
private final static method f$lambda$0(): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method f(): java.lang.String
|
||||
private final static method g$lambda$1(): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method g(): kotlin.jvm.functions.Function0
|
||||
public inner class A$B
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class test/CKt {
|
||||
// source: 'C.kt'
|
||||
public final static method eval(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): java.lang.Object
|
||||
}
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
@kotlin.Metadata
|
||||
public final class DP {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
public method <init>(): void
|
||||
private final static method provideDelegate$lambda$0(): java.lang.String
|
||||
public final @org.jetbrains.annotations.NotNull method provideDelegate(@org.jetbrains.annotations.Nullable p0: java.lang.Object, @org.jetbrains.annotations.NotNull p1: kotlin.reflect.KProperty): kotlin.Lazy
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H1$Companion {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
synthetic final static field $$delegatedProperties: kotlin.reflect.KProperty[]
|
||||
static method <clinit>(): void
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public final @org.jetbrains.annotations.NotNull method getProperty(): java.lang.String
|
||||
public final inner class H1$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H1 {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: H1$Companion
|
||||
private final static @org.jetbrains.annotations.NotNull field property$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public synthetic final static method access$getProperty$delegate$cp(): kotlin.Lazy
|
||||
public final inner class H1$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H2$Companion {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public final @org.jetbrains.annotations.NotNull method getProperty(): java.lang.String
|
||||
public final inner class H2$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class H2 {
|
||||
// source: 'delegatedPropertiesInCompanionObject.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: H2$Companion
|
||||
private final static @org.jetbrains.annotations.NotNull field property$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public synthetic final static method access$getProperty$delegate$cp(): kotlin.Lazy
|
||||
private final static method property_delegate$lambda$0(): java.lang.String
|
||||
public final inner class H2$Companion
|
||||
}
|
||||
Vendored
+11
@@ -0,0 +1,11 @@
|
||||
@kotlin.Metadata
|
||||
final class FileClassWithPrivateDeclarationsOnly_afterKt {
|
||||
// source: 'fileClassWithPrivateDeclarationsOnly_after.kt'
|
||||
private final static @org.jetbrains.annotations.NotNull field a: kotlin.Unit
|
||||
private final static @org.jetbrains.annotations.NotNull field b$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
private final static method b_delegate$lambda$0(): kotlin.Unit
|
||||
private final static method f(): void
|
||||
public final static @kotlin.internal.InlineOnly method g(): void
|
||||
private final static method getB(): kotlin.Unit
|
||||
}
|
||||
Vendored
+11
@@ -0,0 +1,11 @@
|
||||
@kotlin.Metadata
|
||||
public final class FileClassWithPrivateDeclarationsOnly_beforeKt {
|
||||
// source: 'fileClassWithPrivateDeclarationsOnly_before.kt'
|
||||
private final static @org.jetbrains.annotations.NotNull field a: kotlin.Unit
|
||||
private final static @org.jetbrains.annotations.NotNull field b$delegate: kotlin.Lazy
|
||||
static method <clinit>(): void
|
||||
private final static method b_delegate$lambda$0(): kotlin.Unit
|
||||
private final static method f(): void
|
||||
public final static @kotlin.internal.InlineOnly method g(): void
|
||||
private final static method getB(): kotlin.Unit
|
||||
}
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
@kotlin.Metadata
|
||||
public final class _2Kt$box$1$1$1$q$1 {
|
||||
// source: '2.kt'
|
||||
enclosing method _2Kt.box()V
|
||||
inner (anonymous) class _2Kt$box$1$1$1$q$1
|
||||
method <init>(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class _2Kt$box$1$1$p$1 {
|
||||
// source: '2.kt'
|
||||
enclosing method _2Kt.box()V
|
||||
inner (anonymous) class _2Kt$box$1$1$p$1
|
||||
method <init>(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class _2Kt {
|
||||
// source: '2.kt'
|
||||
inner (anonymous) class _2Kt$box$1$1$1$q$1
|
||||
inner (anonymous) class _2Kt$box$1$1$p$1
|
||||
private final static method box$lambda$2$lambda$1$lambda$0(p0: kotlin.jvm.internal.Ref$ObjectRef): kotlin.Unit
|
||||
private final static method box$lambda$2$lambda$1(p0: kotlin.jvm.internal.Ref$ObjectRef, p1: kotlin.jvm.internal.Ref$ObjectRef): kotlin.Unit
|
||||
public final static method box(): void
|
||||
public final static method eval(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): java.lang.Object
|
||||
public final inner class kotlin/jvm/internal/Ref$ObjectRef
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class test/_1Kt {
|
||||
// source: '1.kt'
|
||||
public final static method test(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): void
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
@kotlin.Metadata
|
||||
public interface A {
|
||||
// source: 'lambdaInInitBlockNoPrimaryConstructor.kt'
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public interface B {
|
||||
// source: 'lambdaInInitBlockNoPrimaryConstructor.kt'
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class E {
|
||||
// source: 'lambdaInInitBlockNoPrimaryConstructor.kt'
|
||||
private final field irrelevantField: int
|
||||
public method <init>(@org.jetbrains.annotations.NotNull p0: A): void
|
||||
public method <init>(@org.jetbrains.annotations.NotNull p0: B): void
|
||||
private final static method _init_$lambda$0(): kotlin.Unit
|
||||
public final method getIrrelevantField(): int
|
||||
}
|
||||
compiler/testData/codegen/bytecodeListing/inline/enclosingInfo/lambdaInInnerClassConstructor.fir.txt
Vendored
+17
@@ -0,0 +1,17 @@
|
||||
@kotlin.Metadata
|
||||
public final class Outer$Inner {
|
||||
// source: 'lambdaInInnerClassConstructor.kt'
|
||||
private final @org.jetbrains.annotations.NotNull field lambda: kotlin.jvm.functions.Function0
|
||||
synthetic final field this$0: Outer
|
||||
public method <init>(p0: Outer): void
|
||||
public final @org.jetbrains.annotations.NotNull method getLambda(): kotlin.jvm.functions.Function0
|
||||
private final static method lambda$lambda$0(): kotlin.Unit
|
||||
public final inner class Outer$Inner
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class Outer {
|
||||
// source: 'lambdaInInnerClassConstructor.kt'
|
||||
public method <init>(): void
|
||||
public final inner class Outer$Inner
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
@kotlin.Metadata
|
||||
synthetic final class<null> test/PrivateInlineSamAdapterKt$sam$java_lang_Runnable$0 {
|
||||
// source: 'privateInlineSamAdapter.kt'
|
||||
<null> method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final <null> method run(): void
|
||||
enclosing class test/PrivateInlineSamAdapterKt
|
||||
private synthetic final field <null> function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class test/PrivateInlineSamAdapterKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class<null> test/PrivateInlineSamAdapterKt {
|
||||
// source: 'privateInlineSamAdapter.kt'
|
||||
private final static <null> method test$lambda$0(): kotlin.Unit
|
||||
public final static <null> method test(): void
|
||||
inner (anonymous) class test/PrivateInlineSamAdapterKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
@kotlin.Metadata
|
||||
synthetic final class A$sam$java_lang_Runnable$0 {
|
||||
// source: 'reusedSamWrapperClasses.kt'
|
||||
enclosing class A
|
||||
private synthetic final field function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class A$sam$java_lang_Runnable$0
|
||||
method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class A {
|
||||
// source: 'reusedSamWrapperClasses.kt'
|
||||
inner (anonymous) class A$sam$java_lang_Runnable$0
|
||||
public method <init>(): void
|
||||
private final static method test1$lambda$0(): kotlin.Unit
|
||||
public final method test1(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'reusedSamWrapperClasses.kt'
|
||||
inner (anonymous) class A$sam$java_lang_Runnable$0
|
||||
public method <init>(): void
|
||||
private final static method test2$lambda$0(): kotlin.Unit
|
||||
public final method test2(): void
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
@kotlin.Metadata
|
||||
synthetic final class<null> test/SamAdapterInInlineLambdaKt$sam$java_lang_Runnable$0 {
|
||||
// source: 'samAdapterInInlineLambda.kt'
|
||||
<null> method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final <null> method run(): void
|
||||
enclosing class test/SamAdapterInInlineLambdaKt
|
||||
private synthetic final field <null> function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class test/SamAdapterInInlineLambdaKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class<null> test/SamAdapterInInlineLambdaKt {
|
||||
// source: 'samAdapterInInlineLambda.kt'
|
||||
private final static <null> method test$lambda$0(): kotlin.Unit
|
||||
public final static <null> method test(): void
|
||||
inner (anonymous) class test/SamAdapterInInlineLambdaKt$sam$java_lang_Runnable$0
|
||||
}
|
||||
+57
@@ -0,0 +1,57 @@
|
||||
@kotlin.Metadata
|
||||
public final class A {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
public method <init>(): void
|
||||
public final @org.jetbrains.annotations.NotNull method test1a(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method test1b(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method test2a(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method test2b(): java.lang.Runnable
|
||||
private final static method testRunnableSamCtor1$lambda$0(): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method testRunnableSamCtor1(): java.lang.Runnable
|
||||
private final static method testRunnableSamCtor2$lambda$1(): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method testRunnableSamCtor2(): java.lang.Runnable
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B$runnable1$1 {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
enclosing method B.runnable1()Ljava/lang/Runnable;
|
||||
public final static field INSTANCE: B$runnable1$1
|
||||
inner (anonymous) class B$runnable1$1
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B$runnable2$1 {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
enclosing method B.runnable2()Ljava/lang/Runnable;
|
||||
public final static field INSTANCE: B$runnable2$1
|
||||
inner (anonymous) class B$runnable2$1
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
public final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public synthetic final class B$sam$i$java_lang_Runnable$0 {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
enclosing class B
|
||||
private synthetic final field function: kotlin.jvm.functions.Function0
|
||||
inner (anonymous) class B$sam$i$java_lang_Runnable$0
|
||||
public method <init>(p0: kotlin.jvm.functions.Function0): void
|
||||
public synthetic final method run(): void
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class B {
|
||||
// source: 'wrapperInlinedFromAnotherClass.kt'
|
||||
inner (anonymous) class B$runnable1$1
|
||||
inner (anonymous) class B$runnable2$1
|
||||
inner (anonymous) class B$sam$i$java_lang_Runnable$0
|
||||
public method <init>(): void
|
||||
public final @org.jetbrains.annotations.NotNull method runnable1(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method runnable2(): java.lang.Runnable
|
||||
public final @org.jetbrains.annotations.NotNull method runnableSamCtor(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): java.lang.Runnable
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
@kotlin.Metadata
|
||||
public final class C$Companion {
|
||||
// source: 'strictfpFlag.kt'
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public final strict @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class C {
|
||||
// source: 'strictfpFlag.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: C$Companion
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
private final static method lambda$lambda$0(p0: C): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method lambda(): kotlin.jvm.functions.Function0
|
||||
private final strict method testAccessor(): void
|
||||
public final strict static @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.jvm.JvmInline
|
||||
@kotlin.Metadata
|
||||
public final class IC {
|
||||
// source: 'strictfpFlag.kt'
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static method box-impl(p0: int): IC
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final method getX(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public final strict static method testInlineClassFun-impl(p0: int): void
|
||||
public method toString(): java.lang.String
|
||||
public static method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class StrictfpFlagKt {
|
||||
// source: 'strictfpFlag.kt'
|
||||
public synthetic static method testJvmOverloads$default(p0: int, p1: int, p2: java.lang.Object): void
|
||||
public final static @kotlin.jvm.JvmOverloads method testJvmOverloads(): void
|
||||
public final strict static @kotlin.jvm.JvmOverloads method testJvmOverloads(p0: int): void
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
@kotlin.Metadata
|
||||
public final class C$Companion {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
private method <init>(): void
|
||||
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
|
||||
public synchronized final @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class C {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
public final static @org.jetbrains.annotations.NotNull field Companion: C$Companion
|
||||
static method <clinit>(): void
|
||||
public method <init>(): void
|
||||
private final static method lambda$lambda$0(p0: C): kotlin.Unit
|
||||
public final @org.jetbrains.annotations.NotNull method lambda(): kotlin.jvm.functions.Function0
|
||||
private synchronized final method testAccessor(): void
|
||||
public synchronized final static @kotlin.jvm.JvmStatic method testJvmStatic(): void
|
||||
public final inner class C$Companion
|
||||
}
|
||||
|
||||
@kotlin.jvm.JvmInline
|
||||
@kotlin.Metadata
|
||||
public final class IC {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static method box-impl(p0: int): IC
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final method getX(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public synchronized final static method testInlineClassFun-impl(p0: int): void
|
||||
public method toString(): java.lang.String
|
||||
public static method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class SynchronizedFlagKt {
|
||||
// source: 'synchronizedFlag.kt'
|
||||
public synthetic static method testJvmOverloads$default(p0: int, p1: int, p2: java.lang.Object): void
|
||||
public final static @kotlin.jvm.JvmOverloads method testJvmOverloads(): void
|
||||
public synchronized final static @kotlin.jvm.JvmOverloads method testJvmOverloads(p0: int): void
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
// !SANITIZE_PARENTHESES
|
||||
// IGNORE_BACKEND_K1: JVM_IR
|
||||
|
||||
class `(X)` {
|
||||
fun `(Y)`(): String {
|
||||
@@ -23,4 +24,4 @@ fun box(): String {
|
||||
// 1 \(Y\)
|
||||
|
||||
// JVM_IR_TEMPLATES
|
||||
// 4 this\$0
|
||||
// 3 this\$0
|
||||
|
||||
@@ -8,7 +8,7 @@ fun box() {
|
||||
foo(A("O", 123)) { (x, y) -> x + y }
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:3 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
|
||||
// test.kt:8 box:
|
||||
@@ -18,6 +18,16 @@ fun box() {
|
||||
// test.kt:8 box:
|
||||
// test.kt:9 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:3 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:8 box$lambda$0:
|
||||
// test.kt:5 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:8 box:
|
||||
// test.kt:9 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:3 <init>: x="O":kotlin.String, y=123:number
|
||||
|
||||
+15
-1
@@ -16,7 +16,7 @@ fun box() {
|
||||
foo(MyPair("X", "Y")) { (x, y) -> x + y }
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:16 box:
|
||||
// test.kt:3 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
|
||||
// test.kt:16 box:
|
||||
@@ -30,6 +30,20 @@ fun box() {
|
||||
// test.kt:16 box:
|
||||
// test.kt:17 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:16 box:
|
||||
// test.kt:3 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
|
||||
// test.kt:16 box:
|
||||
// test.kt:13 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:16 box$lambda$0:
|
||||
// test.kt:5 component1:
|
||||
// test.kt:16 box$lambda$0:
|
||||
// test.kt:9 component2:
|
||||
// test.kt:16 box$lambda$0: x:java.lang.String="O":java.lang.String
|
||||
// test.kt:13 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:16 box:
|
||||
// test.kt:17 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:16 box:
|
||||
// test.kt:3 <init>: x="X":kotlin.String, y="Y":kotlin.String
|
||||
|
||||
+17
-9
@@ -26,23 +26,15 @@ fun box() {
|
||||
}
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:17 box:
|
||||
// test.kt:4 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
|
||||
// test.kt:17 box:
|
||||
// test.kt:14 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:19 invoke:
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:20 invoke:
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:6 component1:
|
||||
// test.kt:20 invoke:
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:19 invoke: x:java.lang.String="O":java.lang.String
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:22 invoke: x:java.lang.String="O":java.lang.String
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:10 component2:
|
||||
// test.kt:22 invoke: x:java.lang.String="O":java.lang.String
|
||||
// test.kt:25 invoke: x:java.lang.String="O":java.lang.String, y:java.lang.String="K":java.lang.String
|
||||
@@ -50,6 +42,22 @@ fun box() {
|
||||
// test.kt:17 box:
|
||||
// test.kt:27 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:17 box:
|
||||
// test.kt:4 <init>: x:java.lang.String="X":java.lang.String, y:java.lang.String="Y":java.lang.String
|
||||
// test.kt:17 box:
|
||||
// test.kt:14 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:20 box$lambda$0:
|
||||
// test.kt:6 component1:
|
||||
// test.kt:20 box$lambda$0:
|
||||
// test.kt:22 box$lambda$0: x:java.lang.String="O":java.lang.String
|
||||
// test.kt:10 component2:
|
||||
// test.kt:22 box$lambda$0: x:java.lang.String="O":java.lang.String
|
||||
// test.kt:25 box$lambda$0: x:java.lang.String="O":java.lang.String, y:java.lang.String="K":java.lang.String
|
||||
// test.kt:14 foo: a:MyPair=MyPair, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:17 box:
|
||||
// test.kt:27 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:17 box:
|
||||
// test.kt:4 <init>: x="X":kotlin.String, y="Y":kotlin.String
|
||||
|
||||
@@ -20,24 +20,32 @@ fun box() {
|
||||
return
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:9 box:
|
||||
// test.kt:4 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
|
||||
// test.kt:9 box:
|
||||
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:11 invoke:
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:12 invoke:
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:11 invoke: x:java.lang.String="O":java.lang.String
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:14 invoke: x:java.lang.String="O":java.lang.String
|
||||
// test.kt:17 invoke: x:java.lang.String="O":java.lang.String, y:int=123:int
|
||||
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:9 box:
|
||||
// test.kt:20 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:9 box:
|
||||
// test.kt:4 <init>: x:java.lang.String="O":java.lang.String, y:int=123:int
|
||||
// test.kt:9 box:
|
||||
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:12 box$lambda$0:
|
||||
// test.kt:14 box$lambda$0: x:java.lang.String="O":java.lang.String
|
||||
// test.kt:17 box$lambda$0: x:java.lang.String="O":java.lang.String, y:int=123:int
|
||||
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:9 box:
|
||||
// test.kt:20 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:9 box:
|
||||
// test.kt:4 <init>: x="O":kotlin.String, y=123:number
|
||||
|
||||
+9
-1
@@ -10,7 +10,7 @@ fun box() {
|
||||
}
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:9 invoke: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
@@ -18,6 +18,14 @@ fun box() {
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:9 box$lambda$0: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
// test.kt:10 box$lambda$0: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg=Function1
|
||||
|
||||
+9
-1
@@ -10,7 +10,7 @@ fun box() {
|
||||
}
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:4 foo: block:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:9 invoke: $this$foo:long=1:long
|
||||
@@ -18,6 +18,14 @@ fun box() {
|
||||
// test.kt:8 box:
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:4 foo: block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:9 box$lambda$0: $this$foo:long=1:long
|
||||
// test.kt:4 foo: block:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:8 box:
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:4 foo: block=Function1
|
||||
|
||||
+9
-1
@@ -10,7 +10,7 @@ fun box() {
|
||||
}
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:9 invoke: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
@@ -18,6 +18,14 @@ fun box() {
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:9 box$lambda$0: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
// test.kt:10 box$lambda$0: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg=Function1
|
||||
|
||||
+9
-1
@@ -10,7 +10,7 @@ fun box() {
|
||||
}
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:9 invoke: $this$label:java.lang.String="OK":java.lang.String
|
||||
@@ -18,6 +18,14 @@ fun box() {
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:9 box$lambda$0: $this$label:java.lang.String="OK":java.lang.String
|
||||
// test.kt:10 box$lambda$0: $this$label:java.lang.String="OK":java.lang.String
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg=Function1
|
||||
|
||||
Vendored
+9
-1
@@ -10,7 +10,7 @@ fun box() {
|
||||
})
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:9 invoke: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
@@ -18,6 +18,14 @@ fun box() {
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$box$1
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:9 box$lambda$0: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
// test.kt:10 box$lambda$0: $this$blockFun:java.lang.String="OK":java.lang.String
|
||||
// test.kt:5 blockFun: blockArg:kotlin.jvm.functions.Function1=TestKt$<lambda>
|
||||
// test.kt:11 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:8 box:
|
||||
// test.kt:5 blockFun: blockArg=Function1
|
||||
|
||||
+19
-1
@@ -23,7 +23,7 @@ fun box() {
|
||||
}
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:12 box:
|
||||
// test.kt:4 <init>: x:double=1.0:double, y:java.lang.String="":java.lang.String, z:char=0:char
|
||||
// test.kt:12 box:
|
||||
@@ -43,6 +43,24 @@ fun box() {
|
||||
// test.kt:12 box:
|
||||
// test.kt:24 box:
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:12 box:
|
||||
// test.kt:4 <init>: x:double=1.0:double, y:java.lang.String="":java.lang.String, z:char=0:char
|
||||
// test.kt:12 box:
|
||||
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function3=TestKt$<lambda>
|
||||
// test.kt:13 box$lambda$0: w:int=1:int
|
||||
// test.kt:15 box$lambda$0: w:int=1:int, x:double=1.0:double, y:char=0:char
|
||||
// test.kt:4 <init>: x:double=1.0:double, y:java.lang.String="":java.lang.String, z:char=0:char
|
||||
// test.kt:15 box$lambda$0: w:int=1:int, x:double=1.0:double, y:char=0:char
|
||||
// test.kt:16 box$lambda$0: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char
|
||||
// test.kt:4 <init>: x:double=1.0:double, y:java.lang.String="":java.lang.String, z:char=0:char
|
||||
// test.kt:16 box$lambda$0: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char
|
||||
// test.kt:18 box$lambda$0: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
|
||||
// test.kt:22 box$lambda$0: w:int=1:int, x:double=1.0:double, y:char=0:char, a:double=1.0:double, c:char=0:char, _:java.lang.String="":java.lang.String, d:char=0:char
|
||||
// test.kt:6 foo: a:A=A, block:kotlin.jvm.functions.Function3=TestKt$<lambda>
|
||||
// test.kt:12 box:
|
||||
// test.kt:24 box:
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:8 <init properties test.kt>:
|
||||
// test.kt:8 <init properties test.kt>:
|
||||
|
||||
@@ -12,7 +12,11 @@ fun box() {
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:7 box
|
||||
// test.kt:4 eval
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:8 invoke
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:8 box$lambda$0
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:4 eval
|
||||
// test.kt:7 box
|
||||
// test.kt:10 box
|
||||
|
||||
@@ -15,8 +15,13 @@ fun f(block: () -> Unit) {
|
||||
// test.kt:4 box
|
||||
// test.kt:5 box
|
||||
// test.kt:11 f
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:6 invoke
|
||||
// test.kt:7 invoke
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:6 box$lambda$0
|
||||
// test.kt:7 box$lambda$0
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:11 f
|
||||
// test.kt:12 f
|
||||
// test.kt:8 box
|
||||
|
||||
@@ -15,7 +15,7 @@ fun foo(f: () -> Unit) {
|
||||
f()
|
||||
}
|
||||
|
||||
// EXPECTATIONS JVM_IR
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:5 box
|
||||
// test.kt:15 foo
|
||||
// test.kt:6 invoke
|
||||
@@ -30,6 +30,22 @@ fun foo(f: () -> Unit) {
|
||||
// test.kt:16 foo
|
||||
// test.kt:12 box
|
||||
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:5 box
|
||||
// test.kt:15 foo
|
||||
// test.kt:6 box$lambda$0
|
||||
// test.kt:7 box$lambda$0
|
||||
// test.kt:15 foo
|
||||
// test.kt:16 foo
|
||||
// test.kt:5 box
|
||||
// test.kt:9 box
|
||||
// test.kt:15 foo
|
||||
// test.kt:10 box$lambda$1
|
||||
// test.kt:11 box$lambda$1
|
||||
// test.kt:15 foo
|
||||
// test.kt:16 foo
|
||||
// test.kt:12 box
|
||||
|
||||
// EXPECTATIONS JS_IR
|
||||
// test.kt:5 box
|
||||
// test.kt:15 foo
|
||||
|
||||
@@ -14,7 +14,11 @@ suspend fun box() {
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:9 box
|
||||
// test.kt:5 foo
|
||||
// EXPECTATIONS ClassicFrontend JVM_IR
|
||||
// test.kt:10 invoke
|
||||
// EXPECTATIONS FIR JVM_IR
|
||||
// test.kt:10 box$lambda$0
|
||||
// EXPECTATIONS JVM_IR
|
||||
// test.kt:5 foo
|
||||
// test.kt:9 box
|
||||
// test.kt:12 box
|
||||
|
||||
+15
-6
@@ -191,13 +191,16 @@ class SteppingDebugRunner(testServices: TestServices) : DebugRunner(testServices
|
||||
override fun storeStep(loggedItems: ArrayList<SteppingTestLoggedData>, event: Event) {
|
||||
assert(event is LocatableEvent)
|
||||
val location = (event as LocatableEvent).location()
|
||||
loggedItems.add(
|
||||
SteppingTestLoggedData(
|
||||
val data =
|
||||
if (isIndyLambda(location)) {
|
||||
// Invokedynamic lambdas are not synthetic in JDI, and they don't have source information.
|
||||
SteppingTestLoggedData(-1, true, "<lambda>")
|
||||
} else SteppingTestLoggedData(
|
||||
location.lineNumber(),
|
||||
location.method().isSynthetic,
|
||||
location.formatAsExpectation()
|
||||
)
|
||||
)
|
||||
loggedItems.add(data)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -234,12 +237,18 @@ class LocalVariableDebugRunner(testServices: TestServices) : DebugRunner(testSer
|
||||
// Local variable table completely absent - not distinguished from an empty table.
|
||||
listOf()
|
||||
}
|
||||
loggedItems.add(
|
||||
SteppingTestLoggedData(
|
||||
val data =
|
||||
if (isIndyLambda(location)) {
|
||||
// Invokedynamic lambdas are not synthetic in JDI, and they don't have source information.
|
||||
SteppingTestLoggedData(-1, true, "<lambda>")
|
||||
} else SteppingTestLoggedData(
|
||||
location.lineNumber(),
|
||||
false,
|
||||
location.formatAsExpectation(visibleVars)
|
||||
)
|
||||
)
|
||||
loggedItems.add(data)
|
||||
}
|
||||
}
|
||||
|
||||
private fun isIndyLambda(location: Location): Boolean =
|
||||
"$\$Lambda$" in location.declaringType().name()
|
||||
|
||||
+6
-1
@@ -14,6 +14,7 @@ import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.NO_SMAP_DUMP
|
||||
import org.jetbrains.kotlin.test.directives.CodegenTestDirectives.SEPARATE_SMAP_DUMPS
|
||||
import org.jetbrains.kotlin.test.directives.model.DirectivesContainer
|
||||
import org.jetbrains.kotlin.test.model.BinaryArtifacts
|
||||
import org.jetbrains.kotlin.test.model.FrontendKinds
|
||||
import org.jetbrains.kotlin.test.model.TestModule
|
||||
import org.jetbrains.kotlin.test.services.TestServices
|
||||
import org.jetbrains.kotlin.test.services.moduleStructure
|
||||
@@ -77,7 +78,11 @@ class SMAPDumpHandler(testServices: TestServices) : JvmBinaryArtifactHandler(tes
|
||||
}
|
||||
|
||||
val testDataFile = testServices.moduleStructure.originalTestDataFiles.first()
|
||||
val expectedFile = testDataFile.withExtension(extension)
|
||||
val firExpectedFile = testDataFile.withExtension("fir.$extension")
|
||||
val expectedFile =
|
||||
if (testServices.moduleStructure.modules.first().frontendKind == FrontendKinds.FIR && firExpectedFile.exists())
|
||||
firExpectedFile
|
||||
else testDataFile.withExtension(extension)
|
||||
assertions.assertEqualsToFile(expectedFile, dumper.generateResultingDump())
|
||||
|
||||
if (separateDumpEnabled && isSeparateCompilation) {
|
||||
|
||||
+5
-1
@@ -46,10 +46,14 @@ class LocalVariableRecord(
|
||||
append(variableType)
|
||||
}
|
||||
append("=")
|
||||
append(value)
|
||||
append(value.toString().normalizeIndyLambdas())
|
||||
}
|
||||
}
|
||||
|
||||
private fun String.normalizeIndyLambdas(): String =
|
||||
// Invokedynamic lambdas have an unstable hash in the name.
|
||||
replace("\\\$Lambda\\\$.*".toRegex(), "<lambda>")
|
||||
|
||||
private const val EXPECTATIONS_MARKER = "// EXPECTATIONS"
|
||||
private const val FORCE_STEP_INTO_MARKER = "// FORCE_STEP_INTO"
|
||||
|
||||
|
||||
@@ -309,6 +309,7 @@ enum class LanguageFeature(
|
||||
ProhibitDefaultArgumentsInExpectActualizedByFakeOverride(KOTLIN_2_0, kind = BUG_FIX), // KT-62036
|
||||
DisableCompatibilityModeForNewInference(KOTLIN_2_0, kind = OTHER), // KT-63558 (umbrella), KT-64306, KT-64307, KT-64308
|
||||
DfaBooleanVariables(KOTLIN_2_0), // KT-25747
|
||||
LightweightLambdas(KOTLIN_2_0, kind = OTHER), // KT-45375
|
||||
|
||||
// 2.1
|
||||
|
||||
@@ -355,7 +356,6 @@ enum class LanguageFeature(
|
||||
// Experimental features
|
||||
|
||||
BreakContinueInInlineLambdas(null), // KT-1436
|
||||
LightweightLambdas(null),
|
||||
JsEnableExtensionFunctionInExternals(null, kind = OTHER),
|
||||
PackagePrivateFileClassesWithAllPrivateMembers(null), // Disabled until the breaking change is approved by the committee, see KT-10884.
|
||||
BooleanElvisBoundSmartCasts(null), // see KT-26357 for details
|
||||
|
||||
Vendored
+49
@@ -0,0 +1,49 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/B.class
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
End of files
|
||||
Compiling files:
|
||||
src/B.kt
|
||||
End of files
|
||||
After build round. Marked as dirty by Kotlin:
|
||||
src/consumeBExtLambda.kt
|
||||
src/consumeBLambda.kt
|
||||
src/useConsumeBExtLambda.kt
|
||||
src/useConsumeBLambda.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/ConsumeBExtLambdaKt.class
|
||||
out/production/module/ConsumeBLambdaKt.class
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/UseConsumeBExtLambdaKt.class
|
||||
out/production/module/UseConsumeBLambdaKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/consumeBExtLambda.kt
|
||||
src/consumeBLambda.kt
|
||||
src/useConsumeBExtLambda.kt
|
||||
src/useConsumeBLambda.kt
|
||||
End of files
|
||||
Exit code: ABORT
|
||||
------------------------------------------
|
||||
COMPILATION FAILED
|
||||
Type mismatch: inferred type is B but A was expected
|
||||
Type mismatch: inferred type is B but A was expected
|
||||
|
||||
================ Step #2 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/B.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/B.kt
|
||||
src/consumeBExtLambda.kt
|
||||
src/consumeBLambda.kt
|
||||
src/useConsumeBExtLambda.kt
|
||||
src/useConsumeBLambda.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/inline/InlineKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/inline.kt
|
||||
End of files
|
||||
After build round. Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/Y.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/fun.kt
|
||||
End of files
|
||||
After build round. Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/X.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,11 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/outer/nested/NestedKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/nested.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
+1
-1
@@ -22,4 +22,4 @@ Exit code: ABORT
|
||||
------------------------------------------
|
||||
COMPILATION FAILED
|
||||
Interface SamInterface does not have constructors
|
||||
Interface SamInterface does not have constructors
|
||||
Interface SamInterface does not have constructors
|
||||
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/SamInterface.class
|
||||
End of files
|
||||
Exit code: NOTHING_DONE
|
||||
------------------------------------------
|
||||
Compiling files:
|
||||
src/SamInterface.java
|
||||
End of files
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/UsageWithFunctionExpressionKt.class
|
||||
out/production/module/UsageWithFunctionLiteralKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usageWithFunctionExpression.kt
|
||||
src/usageWithFunctionLiteral.kt
|
||||
End of files
|
||||
Exit code: ABORT
|
||||
------------------------------------------
|
||||
COMPILATION FAILED
|
||||
Interface SamInterface does not have constructors
|
||||
Interface SamInterface does not have constructors
|
||||
Vendored
+1
-1
@@ -22,4 +22,4 @@ Exit code: ABORT
|
||||
------------------------------------------
|
||||
COMPILATION FAILED
|
||||
Interface SamInterface does not have constructors
|
||||
Interface SamInterface does not have constructors
|
||||
Interface SamInterface does not have constructors
|
||||
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/SamInterface.class
|
||||
End of files
|
||||
Exit code: NOTHING_DONE
|
||||
------------------------------------------
|
||||
Compiling files:
|
||||
src/SamInterface.java
|
||||
End of files
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/UsageWithFunctionExpressionKt.class
|
||||
out/production/module/UsageWithFunctionLiteralKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usageWithFunctionExpression.kt
|
||||
src/usageWithFunctionLiteral.kt
|
||||
End of files
|
||||
Exit code: ABORT
|
||||
------------------------------------------
|
||||
COMPILATION FAILED
|
||||
Interface SamInterface does not have constructors
|
||||
Interface SamInterface does not have constructors
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/SamInterface.class
|
||||
End of files
|
||||
Exit code: NOTHING_DONE
|
||||
------------------------------------------
|
||||
Compiling files:
|
||||
src/SamInterface.java
|
||||
End of files
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/UsageWithFunctionExpressionKt.class
|
||||
out/production/module/UsageWithFunctionLiteralKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usageWithFunctionExpression.kt
|
||||
src/usageWithFunctionLiteral.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -212,7 +212,7 @@ class MetadataSmokeTest {
|
||||
fun testDisplayNameSample() {
|
||||
class A {}
|
||||
|
||||
val b: (Int) -> Int = fun(x: Int) = x
|
||||
val b: (Int) -> Int = @JvmSerializableLambda fun(x: Int) = x
|
||||
|
||||
assertEquals("Class .kotlinx/metadata/test/MetadataSmokeTest\$testDisplayNameSample\$A", displayName(A::class.java.getMetadata()))
|
||||
assertEquals("Lambda <no name provided>", displayName(b::class.java.getMetadata()))
|
||||
|
||||
@@ -15,7 +15,7 @@ import kotlin.test.assertFailsWith
|
||||
|
||||
class WritersContractTest {
|
||||
val classMd = WritersContractTest::class.java.getMetadata()
|
||||
val l: () -> Unit = {}
|
||||
val l: () -> Unit = @JvmSerializableLambda {}
|
||||
val lambdaMd = l::class.java.getMetadata()
|
||||
val fileFacadeMd = Class.forName("kotlinx.metadata.test.testdata.FileFacade").getMetadata()
|
||||
val multiFileFacadeMd = Class.forName("kotlinx.metadata.test.testdata.MultiFileClassFacade").getMetadata()
|
||||
|
||||
+2
-17
@@ -53,25 +53,10 @@ package {
|
||||
}
|
||||
// IntersectionTypeInLambdaLiteralAndDelegatedPropertyKt$test$1.class
|
||||
// ------------------------------------------
|
||||
lambda {
|
||||
|
||||
// signature: invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
||||
local final fun kotlin/Nothing.<anonymous>(it: kotlin/Nothing): kotlin/Any
|
||||
}
|
||||
synthetic class
|
||||
// IntersectionTypeInLambdaLiteralAndDelegatedPropertyKt$test$2.class
|
||||
// ------------------------------------------
|
||||
lambda {
|
||||
|
||||
// signature: invoke(LInv;LInv;)LInv;
|
||||
local final fun kotlin/Nothing.<anonymous>(it: kotlin/Nothing): Inv<out kotlin/Any>
|
||||
}
|
||||
// IntersectionTypeInLambdaLiteralAndDelegatedPropertyKt$test$d$2.class
|
||||
// ------------------------------------------
|
||||
lambda {
|
||||
|
||||
// signature: invoke()Ljava/lang/Object;
|
||||
local final fun <anonymous>(): kotlin/Any
|
||||
}
|
||||
synthetic class
|
||||
// Inv.class
|
||||
// ------------------------------------------
|
||||
public final class Inv<T#0 /* T */> : kotlin/Any {
|
||||
|
||||
-14
@@ -7,20 +7,6 @@ package {
|
||||
|
||||
// module name: test-module
|
||||
}
|
||||
// LambdaKt$test$f$1.class
|
||||
// ------------------------------------------
|
||||
lambda {
|
||||
|
||||
// signature: invoke()V
|
||||
local final fun <anonymous>(): kotlin/Unit
|
||||
}
|
||||
// LambdaKt$test$g$1.class
|
||||
// ------------------------------------------
|
||||
lambda {
|
||||
|
||||
// signature: invoke(Lkotlin/Unit;[ILjava/util/Set;)Ljava/lang/String;
|
||||
local final fun kotlin/Unit.<no name provided>(s: kotlin/IntArray?, t: kotlin/collections/Set<kotlin/Double>): kotlin/String
|
||||
}
|
||||
// META-INF/test-module.kotlin_module
|
||||
// ------------------------------------------
|
||||
module {
|
||||
|
||||
@@ -188,18 +188,6 @@ public final class IntrinsicsKt : java/lang/Object {
|
||||
}
|
||||
}
|
||||
|
||||
final class SerializableObject$1 : kotlin/jvm/internal/Lambda, kotlin/jvm/functions/Function0 {
|
||||
public final static SerializableObject$1 INSTANCE
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
void <init>()
|
||||
|
||||
public final kotlinx.serialization.KSerializer invoke()
|
||||
|
||||
public java.lang.Object invoke()
|
||||
}
|
||||
|
||||
public final class SerializableObject : java/lang/Object {
|
||||
private final static kotlin.Lazy $cachedSerializer$delegate
|
||||
|
||||
@@ -209,6 +197,8 @@ public final class SerializableObject : java/lang/Object {
|
||||
|
||||
private void <init>()
|
||||
|
||||
private final static kotlinx.serialization.KSerializer _init_$_anonymous_()
|
||||
|
||||
private final kotlinx.serialization.KSerializer get$cachedSerializer()
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
|
||||
@@ -276,82 +276,6 @@ public final class Container : java/lang/Object {
|
||||
}
|
||||
}
|
||||
|
||||
final class Result$Companion$1 : kotlin/jvm/internal/Lambda, kotlin/jvm/functions/Function0 {
|
||||
public final static Result$Companion$1 INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$Companion$1)
|
||||
DUP
|
||||
INVOKESPECIAL (Result$Companion$1, <init>, ()V)
|
||||
PUTSTATIC (Result$Companion$1, INSTANCE, LResult$Companion$1;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ICONST_0
|
||||
INVOKESPECIAL (kotlin/jvm/internal/Lambda, <init>, (I)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer invoke() {
|
||||
LABEL (L0)
|
||||
NEW (kotlinx/serialization/SealedClassSerializer)
|
||||
DUP
|
||||
LDC (Result)
|
||||
LDC (LResult;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlin/reflect/KClass)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
LDC (LResult$Err;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_1
|
||||
LDC (LResult$OK;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
NEW (kotlinx/serialization/internal/ObjectSerializer)
|
||||
DUP
|
||||
LDC (Result.Err)
|
||||
GETSTATIC (Result$Err, INSTANCE, LResult$Err;)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ObjectSerializer, <init>, (Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/annotation/Annotation;)V)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_1
|
||||
GETSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/SealedClassSerializer, <init>, (Ljava/lang/String;Lkotlin/reflect/KClass;[Lkotlin/reflect/KClass;[Lkotlinx/serialization/KSerializer;[Ljava/lang/annotation/Annotation;)V)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public java.lang.Object invoke() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKEVIRTUAL (Result$Companion$1, invoke, ()Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class Result$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
@@ -380,51 +304,6 @@ public final class Result$Companion : java/lang/Object {
|
||||
}
|
||||
}
|
||||
|
||||
final class Result$Err$1 : kotlin/jvm/internal/Lambda, kotlin/jvm/functions/Function0 {
|
||||
public final static Result$Err$1 INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$Err$1)
|
||||
DUP
|
||||
INVOKESPECIAL (Result$Err$1, <init>, ()V)
|
||||
PUTSTATIC (Result$Err$1, INSTANCE, LResult$Err$1;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ICONST_0
|
||||
INVOKESPECIAL (kotlin/jvm/internal/Lambda, <init>, (I)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer invoke() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
NEW (kotlinx/serialization/internal/ObjectSerializer)
|
||||
DUP
|
||||
LDC (Result.Err)
|
||||
GETSTATIC (Result$Err, INSTANCE, LResult$Err;)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ObjectSerializer, <init>, (Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/annotation/Annotation;)V)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public java.lang.Object invoke() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
ALOAD (0)
|
||||
INVOKEVIRTUAL (Result$Err$1, invoke, ()Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class Result$Err : Result {
|
||||
private final static kotlin.Lazy $cachedSerializer$delegate
|
||||
|
||||
@@ -438,8 +317,7 @@ public final class Result$Err : Result {
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
GETSTATIC (kotlin/LazyThreadSafetyMode, PUBLICATION, Lkotlin/LazyThreadSafetyMode;)
|
||||
GETSTATIC (Result$Err$1, INSTANCE, LResult$Err$1;)
|
||||
CHECKCAST (kotlin/jvm/functions/Function0)
|
||||
INVOKEDYNAMIC (invoke, ()Lkotlin/jvm/functions/Function0;, java/lang/invoke/LambdaMetafactory.metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; (6), ()Ljava/lang/Object;, Result$Err._init_$_anonymous_()Lkotlinx/serialization/KSerializer; (6), ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESTATIC (kotlin/LazyKt, lazy, (Lkotlin/LazyThreadSafetyMode;Lkotlin/jvm/functions/Function0;)Lkotlin/Lazy;)
|
||||
PUTSTATIC (Result$Err, $cachedSerializer$delegate, Lkotlin/Lazy;)
|
||||
RETURN
|
||||
@@ -455,6 +333,8 @@ public final class Result$Err : Result {
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
private final static kotlinx.serialization.KSerializer _init_$_anonymous_()
|
||||
|
||||
private final kotlinx.serialization.KSerializer get$cachedSerializer()
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
@@ -727,8 +607,7 @@ public abstract class Result : java/lang/Object, X {
|
||||
INVOKESPECIAL (Result$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Result, Companion, LResult$Companion;)
|
||||
GETSTATIC (kotlin/LazyThreadSafetyMode, PUBLICATION, Lkotlin/LazyThreadSafetyMode;)
|
||||
GETSTATIC (Result$Companion$1, INSTANCE, LResult$Companion$1;)
|
||||
CHECKCAST (kotlin/jvm/functions/Function0)
|
||||
INVOKEDYNAMIC (invoke, ()Lkotlin/jvm/functions/Function0;, java/lang/invoke/LambdaMetafactory.metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; (6), ()Ljava/lang/Object;, Result._init_$_anonymous_()Lkotlinx/serialization/KSerializer; (6), ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESTATIC (kotlin/LazyKt, lazy, (Lkotlin/LazyThreadSafetyMode;Lkotlin/jvm/functions/Function0;)Lkotlin/Lazy;)
|
||||
PUTSTATIC (Result, $cachedSerializer$delegate, Lkotlin/Lazy;)
|
||||
RETURN
|
||||
@@ -760,6 +639,8 @@ public abstract class Result : java/lang/Object, X {
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
private final static kotlinx.serialization.KSerializer _init_$_anonymous_()
|
||||
|
||||
public final static kotlin.Lazy access$get$cachedSerializer$delegate$cp()
|
||||
|
||||
public void def()
|
||||
|
||||
Reference in New Issue
Block a user