Mangle inline class members
<IMPL_SUFFIX> for method is a method signature hash, if method value parameter types contain inline class types, otherwise 'impl'. Constructor methods are named as 'constructor-<IMPL_SUFFIX>'. Synthesized 'box' and 'unbox' methods are named as '<METHOD_NAME>-<IMPL_SUFFIX>'. Erased implementations of overriding and non-overriding methods are named as '<METHOD_NAME>-<IMPL_SUFFIX>'. Fully specialized implementation of 'equals' will have a special suffix.
This commit is contained in:
+15
@@ -0,0 +1,15 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
// IGNORE_BACKEND: JVM_IR
|
||||
|
||||
inline class Z(val data: Int)
|
||||
|
||||
fun box(): String {
|
||||
if (Z(0) != Z(0)) throw AssertionError()
|
||||
if (Z(0) == Z(1)) throw AssertionError()
|
||||
|
||||
if (Z(1234).hashCode() != 1234) throw AssertionError(Z(1234).hashCode().toString())
|
||||
|
||||
if (Z(0).toString() != "Z(data=0)") throw AssertionError(Z(0).toString())
|
||||
|
||||
return "OK"
|
||||
}
|
||||
Vendored
+8
-7
@@ -14,15 +14,16 @@ public final class Foo {
|
||||
inner class Foo$Companion
|
||||
static method <clinit>(): void
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box(p0: int): Foo
|
||||
public static method constructor(p0: int): int
|
||||
public static method equals(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): Foo
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable 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(p0: int): int
|
||||
public final static method inInlineClass(p0: int): void
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public final static method inInlineClass-impl(p0: int): void
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString(p0: int): java.lang.String
|
||||
public synthetic final method unbox(): int
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
Vendored
+8
-8
@@ -2,17 +2,17 @@
|
||||
public final class Foo {
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box(p0: int): Foo
|
||||
public static method constructor(p0: int): int
|
||||
public static method equals(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): Foo
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final static method getAsThis(p0: int): int
|
||||
public final static method getProp(p0: int): int
|
||||
public final static method getAsThis-impl(p0: int): int
|
||||
public final static method getProp-impl(p0: int): int
|
||||
public final method getX(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode(p0: int): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString(p0: int): java.lang.String
|
||||
public synthetic final method unbox(): int
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
+34
-33
@@ -2,41 +2,42 @@
|
||||
public final class Z {
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box(p0: int): Z
|
||||
public static method constructor(p0: int): int
|
||||
public static method constructor(p0: int, p1: int): int
|
||||
public static method constructor(p0: long): int
|
||||
private static method constructor(p0: short): int
|
||||
public static method equals(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): Z
|
||||
public static method constructor-impl(p0: int): int
|
||||
public static method constructor-impl(p0: int, p1: int): int
|
||||
public static method constructor-impl(p0: long): int
|
||||
private static method constructor-impl(p0: short): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public final static method getInternalExtensionVal$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getInternalExtensionVar$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getInternalVal$test_module(p0: int): int
|
||||
public final static method getInternalVar$test_module(p0: int): int
|
||||
private final static method getPrivateExtensionVal(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
private final static method getPrivateExtensionVar(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
private final static method getPrivateVal(p0: int): int
|
||||
private final static method getPrivateVar(p0: int): int
|
||||
public final static method getPublicExtensionVal(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getPublicExtensionVar(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getPublicVal(p0: int): int
|
||||
public final static method getPublicVar(p0: int): int
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final static method getInternalExtensionVal-impl$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getInternalExtensionVar-impl$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getInternalVal-impl$test_module(p0: int): int
|
||||
public final static method getInternalVar-impl$test_module(p0: int): int
|
||||
private final static method getPrivateExtensionVal-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
private final static method getPrivateExtensionVar-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
private final static method getPrivateVal-impl(p0: int): int
|
||||
private final static method getPrivateVar-impl(p0: int): int
|
||||
public final static method getPublicExtensionVal-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getPublicExtensionVar-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static method getPublicVal-impl(p0: int): int
|
||||
public final static method getPublicVar-impl(p0: int): int
|
||||
public final method getX(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode(p0: int): int
|
||||
public final static method internalExtensionFun$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public final static method internalFun$test_module(p0: int): void
|
||||
private final static method privateExtensionFun(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
private final static method privateFun(p0: int): void
|
||||
public final static method publicExtensionFun(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public final static method publicFun(p0: int): void
|
||||
public final static method setInternalExtensionVar$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String, p2: int): void
|
||||
public final static method setInternalVar$test_module(p0: int, p1: int): void
|
||||
private final static method setPrivateExtensionVar(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String, p2: int): void
|
||||
private final static method setPrivateVar(p0: int, p1: int): void
|
||||
public final static method setPublicExtensionVar(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String, p2: int): void
|
||||
public final static method setPublicVar(p0: int, p1: int): void
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public final static method internalExtensionFun-impl$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public final static method internalFun-impl$test_module(p0: int): void
|
||||
private final static method privateExtensionFun-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
private final static method privateFun-impl(p0: int): void
|
||||
public final static method publicExtensionFun-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public final static method publicFun-impl(p0: int): void
|
||||
public final static method setInternalExtensionVar-impl$test_module(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String, p2: int): void
|
||||
public final static method setInternalVar-impl$test_module(p0: int, p1: int): void
|
||||
private final static method setPrivateExtensionVar-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String, p2: int): void
|
||||
private final static method setPrivateVar-impl(p0: int, p1: int): void
|
||||
public final static method setPublicExtensionVar-impl(p0: int, @org.jetbrains.annotations.NotNull p1: java.lang.String, p2: int): void
|
||||
public final static method setPublicVar-impl(p0: int, p1: int): void
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString(p0: int): java.lang.String
|
||||
public synthetic final method unbox(): int
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
Vendored
+13
@@ -0,0 +1,13 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
inline class Z1(val x: Int)
|
||||
|
||||
inline class Z2(val z: Z1) {
|
||||
fun foo(z: Z1) {}
|
||||
fun foo(z2: Z2) {}
|
||||
|
||||
fun bar(z: Z1) {}
|
||||
fun Z2.bar() {}
|
||||
|
||||
fun qux() = z
|
||||
}
|
||||
compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassWithInlineClassUnderlyingType.txt
Vendored
+38
@@ -0,0 +1,38 @@
|
||||
@kotlin.Metadata
|
||||
public final class Z1 {
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): Z1
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable 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 method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class Z2 {
|
||||
private final field z: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public final static method bar-E2ud15U(p0: int, p1: int): void
|
||||
public final static method bar-cYvoCnY(p0: int, p1: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): Z2
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final static method foo-E2ud15U(p0: int, p1: int): void
|
||||
public final static method foo-cYvoCnY(p0: int, p1: int): void
|
||||
public final method getZ(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public final static method qux-impl(p0: int): int
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
+24
-23
@@ -49,47 +49,48 @@ public interface IFoo {
|
||||
public final class Z {
|
||||
private final field x: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box(p0: int): Z
|
||||
public static method constructor(p0: int): int
|
||||
public static method constructor(p0: long): int
|
||||
public static method equals(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): Z
|
||||
public static method constructor-impl(p0: int): int
|
||||
public static method constructor-impl(p0: long): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public final static @AGet method getNonOverridingExtVal(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static @AGet method getNonOverridingExtVar(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static @AGet method getNonOverridingVal(p0: int): int
|
||||
public final static @AGet method getNonOverridingVar(p0: int): int
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final static @AGet method getNonOverridingExtVal-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static @AGet method getNonOverridingExtVar-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public final static @AGet method getNonOverridingVal-impl(p0: int): int
|
||||
public final static @AGet method getNonOverridingVar-impl(p0: int): int
|
||||
public @AGet method getOverridingExtVal(@AReceiver @org.jetbrains.annotations.NotNull p0: java.lang.String): int
|
||||
public static @AGet method getOverridingExtVal(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public static @AGet method getOverridingExtVal-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public @AGet method getOverridingExtVar(@AReceiver @org.jetbrains.annotations.NotNull p0: java.lang.String): int
|
||||
public static @AGet method getOverridingExtVar(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public static @AGet method getOverridingExtVar-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): int
|
||||
public @AGet method getOverridingVal(): int
|
||||
public static @AGet method getOverridingVal(p0: int): int
|
||||
public static @AGet method getOverridingVal-impl(p0: int): int
|
||||
public @AGet method getOverridingVar(): int
|
||||
public static @AGet method getOverridingVar(p0: int): int
|
||||
public static @AGet method getOverridingVar-impl(p0: int): int
|
||||
public final @AGet method getX(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode(p0: int): int
|
||||
public final static @A method nonOverridingExtFun(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public final static @A method nonOverridingExtFun-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public synthetic deprecated static @A method nonOverridingExtVal$annotations(p0: java.lang.String): void
|
||||
public synthetic deprecated static @A method nonOverridingExtVar$annotations(p0: java.lang.String): void
|
||||
public final static @A method nonOverridingFun(p0: int): void
|
||||
public final static @A method nonOverridingFun-impl(p0: int): void
|
||||
public synthetic deprecated static @A method nonOverridingVal$annotations(): void
|
||||
public synthetic deprecated static @A method nonOverridingVar$annotations(): void
|
||||
public @A method overridingExtFun(@AReceiver @org.jetbrains.annotations.NotNull p0: java.lang.String): void
|
||||
public static @A method overridingExtFun(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public static @A method overridingExtFun-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String): void
|
||||
public synthetic deprecated static @A method overridingExtVal$annotations(p0: java.lang.String): void
|
||||
public synthetic deprecated static @A method overridingExtVar$annotations(p0: java.lang.String): void
|
||||
public @A method overridingFun(): void
|
||||
public static @A method overridingFun(p0: int): void
|
||||
public static @A method overridingFun-impl(p0: int): void
|
||||
public synthetic deprecated static @A method overridingVal$annotations(): void
|
||||
public synthetic deprecated static @A method overridingVar$annotations(): void
|
||||
public final static @ASet method setNonOverridingExtVar(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String, @ASetParam p2: int): void
|
||||
public final static @ASet method setNonOverridingVar(p0: int, @ASetParam p1: int): void
|
||||
public final static @ASet method setNonOverridingExtVar-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String, @ASetParam p2: int): void
|
||||
public final static @ASet method setNonOverridingVar-impl(p0: int, @ASetParam p1: int): void
|
||||
public @ASet method setOverridingExtVar(@AReceiver @org.jetbrains.annotations.NotNull p0: java.lang.String, @ASetParam p1: int): void
|
||||
public static @ASet method setOverridingExtVar(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String, @ASetParam p2: int): void
|
||||
public static @ASet method setOverridingExtVar-impl(p0: int, @AReceiver @org.jetbrains.annotations.NotNull p1: java.lang.String, @ASetParam p2: int): void
|
||||
public @ASet method setOverridingVar(@ASetParam p0: int): void
|
||||
public static @ASet method setOverridingVar(p0: int, @ASetParam p1: int): void
|
||||
public static @ASet method setOverridingVar-impl(p0: int, @ASetParam p1: int): void
|
||||
public @A @org.jetbrains.annotations.NotNull method toString(): java.lang.String
|
||||
public static @A @org.jetbrains.annotations.NotNull method toString(p0: int): java.lang.String
|
||||
public synthetic final method unbox(): int
|
||||
public static @A @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
+9
-8
@@ -7,17 +7,18 @@ public interface A {
|
||||
public final class Foo {
|
||||
private final field x: long
|
||||
private synthetic method <init>(p0: long): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box(p0: long): Foo
|
||||
public static method constructor(p0: long): long
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: long): Foo
|
||||
public static method constructor-impl(p0: long): long
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals(p0: long, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: long, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: long, p1: long): boolean
|
||||
public synthetic method foo(p0: java.lang.Object): void
|
||||
public method foo-1e4ch6lh(p0: long): void
|
||||
public static method foo-1e4ch6lh(p0: long, p1: long): void
|
||||
public method foo-GWb7d6U(p0: long): void
|
||||
public static method foo-GWb7d6U(p0: long, p1: long): void
|
||||
public final method getX(): long
|
||||
public method hashCode(): int
|
||||
public static method hashCode(p0: long): int
|
||||
public static method hashCode-impl(p0: long): int
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString(p0: long): java.lang.String
|
||||
public synthetic final method unbox(): long
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: long): java.lang.String
|
||||
public synthetic final method unbox-impl(): long
|
||||
}
|
||||
|
||||
Vendored
+70
@@ -0,0 +1,70 @@
|
||||
@kotlin.Metadata
|
||||
public interface IValue {
|
||||
public abstract method getValue(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class TestInternal {
|
||||
private final field value: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): TestInternal
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class TestOverriding {
|
||||
private final field value: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): TestOverriding
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public method getValue(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class TestPrivate {
|
||||
private final field value: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): TestPrivate
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
|
||||
@kotlin.Metadata
|
||||
public final class TestPublic {
|
||||
private final field value: int
|
||||
private synthetic method <init>(p0: int): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: int): TestPublic
|
||||
public static method constructor-impl(p0: int): int
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: int, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: int, p1: int): boolean
|
||||
public final method getValue(): int
|
||||
public method hashCode(): int
|
||||
public static method hashCode-impl(p0: int): int
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: int): java.lang.String
|
||||
public synthetic final method unbox-impl(): int
|
||||
}
|
||||
Vendored
+9
-9
@@ -2,18 +2,18 @@
|
||||
public final class Foo {
|
||||
private final field l: long
|
||||
private synthetic method <init>(p0: long): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box(p0: long): Foo
|
||||
public static method constructor(p0: long): long
|
||||
public final static method empty(p0: long): void
|
||||
public synthetic final static @org.jetbrains.annotations.NotNull method box-impl(p0: long): Foo
|
||||
public static method constructor-impl(p0: long): long
|
||||
public final static method empty-impl(p0: long): void
|
||||
public method equals(p0: java.lang.Object): boolean
|
||||
public static method equals(p0: long, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public static method equals-impl(p0: long, @org.jetbrains.annotations.Nullable p1: java.lang.Object): boolean
|
||||
public final static method equals-impl0(p0: long, p1: long): boolean
|
||||
public final static method extension(p0: long, @org.jetbrains.annotations.NotNull p1: java.lang.Object, @org.jetbrains.annotations.NotNull p2: java.lang.String): void
|
||||
public final static method extension-impl(p0: long, @org.jetbrains.annotations.NotNull p1: java.lang.Object, @org.jetbrains.annotations.NotNull p2: java.lang.String): void
|
||||
public final method getL(): long
|
||||
public method hashCode(): int
|
||||
public static method hashCode(p0: long): int
|
||||
public final static method param(p0: long, p1: double): void
|
||||
public static method hashCode-impl(p0: long): int
|
||||
public final static method param-impl(p0: long, p1: double): void
|
||||
public method toString(): java.lang.String
|
||||
public static @org.jetbrains.annotations.NotNull method toString(p0: long): java.lang.String
|
||||
public synthetic final method unbox(): long
|
||||
public static @org.jetbrains.annotations.NotNull method toString-impl(p0: long): java.lang.String
|
||||
public synthetic final method unbox-impl(): long
|
||||
}
|
||||
|
||||
Vendored
+3
-2
@@ -1,7 +1,8 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
inline class AsNonNullPrimitive(val i: Int)
|
||||
inline class AsNonNullReference(val s: String) // 3 assertions (constructor, box method, static constructor in $Erased classs)
|
||||
inline class AsNonNullReference(val s: String)
|
||||
// ^ 5 assertions (constructor, box method, erased constructor, 2 assertions in equals--impl)
|
||||
|
||||
fun nonNullPrimitive(a: AsNonNullPrimitive) {}
|
||||
|
||||
@@ -11,4 +12,4 @@ fun AsNonNullReference.nonNullReferenceExtension(b1: AsNonNullReference) {} // 2
|
||||
fun asNullablePrimitive(c: AsNonNullPrimitive?) {}
|
||||
fun asNullableReference(c: AsNonNullReference?) {}
|
||||
|
||||
// 6 checkParameterIsNotNull
|
||||
// 8 checkParameterIsNotNull
|
||||
+1
-1
@@ -9,4 +9,4 @@ fun test(): Any = Z(42)
|
||||
// @TestKt.class:
|
||||
// 0 INVOKESTATIC Z\$Erased\.box
|
||||
// 0 INVOKESTATIC Z\-Erased\.box
|
||||
// 1 INVOKESTATIC Z\.box \(I\)LZ;
|
||||
// 1 INVOKESTATIC Z\.box-impl \(I\)LZ;
|
||||
+3
-3
@@ -12,7 +12,7 @@ inline class Foo(val x: Int) {
|
||||
}
|
||||
}
|
||||
|
||||
// 1 INVOKESTATIC Foo\.empty \(I\)V
|
||||
// 1 INVOKESTATIC Foo\.withParam \(ILjava/lang/String;\)V
|
||||
// 1 INVOKESTATIC Foo\.withInlineClassParam-1e4ch6lh \(II\)V
|
||||
// 1 INVOKESTATIC Foo\.empty-impl \(I\)V
|
||||
// 1 INVOKESTATIC Foo\.withParam-impl \(ILjava/lang/String;\)V
|
||||
// 1 INVOKESTATIC Foo\.withInlineClassParam-GWb7d6U \(II\)V
|
||||
// 5 INVOKEVIRTUAL
|
||||
+1
-1
@@ -11,4 +11,4 @@ fun testNZ(z: Z?) = z?.equals(z)
|
||||
// @TestKt.class:
|
||||
// 0 INVOKESTATIC Z\$Erased\.equals
|
||||
// 0 INVOKESTATIC Z\-Erased\.equals
|
||||
// 3 INVOKESTATIC Z\.equals \(ILjava/lang/Object;\)Z
|
||||
// 3 INVOKESTATIC Z\.equals-impl \(ILjava/lang/Object;\)Z
|
||||
+3
-3
@@ -15,6 +15,6 @@ fun test3() = Z(1, 2)
|
||||
// @TestKt.class:
|
||||
// 0 INVOKESTATIC Z\$Erased\.constructor
|
||||
// 0 INVOKESTATIC Z\-Erased\.constructor
|
||||
// 1 INVOKESTATIC Z\.constructor \(J\)I
|
||||
// 1 INVOKESTATIC Z\.constructor \(Ljava/lang/String;\)I
|
||||
// 1 INVOKESTATIC Z\.constructor \(II\)I
|
||||
// 1 INVOKESTATIC Z\.constructor-impl \(J\)I
|
||||
// 1 INVOKESTATIC Z\.constructor-impl \(Ljava/lang/String;\)I
|
||||
// 1 INVOKESTATIC Z\.constructor-impl \(II\)I
|
||||
+4
-4
@@ -23,7 +23,7 @@ fun test(password: Password) {
|
||||
if (password.password != "OK") throw AssertionError()
|
||||
}
|
||||
|
||||
// 1 public final static test-9zx0e0j9\(Ljava/lang/String;\)V
|
||||
// 1 public final static test-79jv2l6i\(Ljava/lang/String;\)V
|
||||
// 1 public final static test-d4pejdz3\(Ljava/lang/String;\)V
|
||||
// 1 public final static test-c6sgoxk6\(Ljava/lang/String;\)V
|
||||
// 1 public final static test-tmnojjU\(Ljava/lang/String;\)V
|
||||
// 1 public final static test-hI9h0ro\(Ljava/lang/String;\)V
|
||||
// 1 public final static test-75PUH38\(Ljava/lang/String;\)V
|
||||
// 1 public final static test-3mN7H-Y\(Ljava/lang/String;\)V
|
||||
+1
-1
@@ -10,4 +10,4 @@ fun testNZ(z: Z?) = z?.hashCode()
|
||||
// @TestKt.class:
|
||||
// 0 INVOKESTATIC Z\$Erased\.hashCode
|
||||
// 0 INVOKESTATIC Z\-Erased\.hashCode
|
||||
// 2 INVOKESTATIC Z\.hashCode \(I\)I
|
||||
// 2 INVOKESTATIC Z\.hashCode-impl \(I\)I
|
||||
|
||||
Vendored
+1
-1
@@ -9,4 +9,4 @@ fun testNZ(z: Z?) = z?.foo()
|
||||
|
||||
// 0 INVOKESTATIC Z\$Erased\.foo
|
||||
// 0 INVOKESTATIC Z\-Erased\.foo
|
||||
// 2 INVOKESTATIC Z\.foo \(I\)V
|
||||
// 2 INVOKESTATIC Z\.foo-impl \(I\)V
|
||||
|
||||
Vendored
+1
-1
@@ -17,4 +17,4 @@ fun testNZ(z: Z?) = z?.foo()
|
||||
// @TestKt.class:
|
||||
// 0 INVOKESTATIC Z\$Erased\.foo
|
||||
// 0 INVOKESTATIC Z\-Erased\.foo
|
||||
// 2 INVOKESTATIC Z\.foo \(I\)V
|
||||
// 2 INVOKESTATIC Z\.foo-impl \(I\)V
|
||||
Vendored
+1
-1
@@ -7,4 +7,4 @@ inline class Z(val x: Int)
|
||||
fun testZ() = Z(42)
|
||||
|
||||
// @TestKt.class:
|
||||
// 1 INVOKESTATIC Z\.constructor \(I\)I
|
||||
// 1 INVOKESTATIC Z\.constructor-impl \(I\)I
|
||||
|
||||
Vendored
+6
-6
@@ -33,9 +33,9 @@ fun Z.test() {
|
||||
// @TestKt.class:
|
||||
// 0 INVOKESTATIC Z\$Erased\.
|
||||
// 0 INVOKESTATIC Z\-Erased\.
|
||||
// 1 INVOKESTATIC Z.getAVal \(I\)I
|
||||
// 2 INVOKESTATIC Z.getAVar \(I\)I
|
||||
// 2 INVOKESTATIC Z.setAVar \(II\)V
|
||||
// 1 INVOKESTATIC Z.getExtVal \(ILjava/lang/String;\)I
|
||||
// 2 INVOKESTATIC Z.getExtVar \(ILjava/lang/String;\)I
|
||||
// 2 INVOKESTATIC Z.setExtVar \(ILjava/lang/String;I\)V
|
||||
// 1 INVOKESTATIC Z.getAVal-impl \(I\)I
|
||||
// 2 INVOKESTATIC Z.getAVar-impl \(I\)I
|
||||
// 2 INVOKESTATIC Z.setAVar-impl \(II\)V
|
||||
// 1 INVOKESTATIC Z.getExtVal-impl \(ILjava/lang/String;\)I
|
||||
// 2 INVOKESTATIC Z.getExtVar-impl \(ILjava/lang/String;\)I
|
||||
// 2 INVOKESTATIC Z.setExtVar-impl \(ILjava/lang/String;I\)V
|
||||
Vendored
+1
-1
@@ -7,4 +7,4 @@ class C {
|
||||
}
|
||||
|
||||
// 1 public final getS\(\)Ljava/lang/String;
|
||||
// 1 public final setS-90215lrx\(Ljava/lang/String;\)V
|
||||
// 1 public final setS-pD0jJn0\(Ljava/lang/String;\)V
|
||||
-11
@@ -1,11 +0,0 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
inline class Z1(val x: Int)
|
||||
inline class Z2(val x: Z1)
|
||||
|
||||
fun test(zs: MutableList<Z2>, z: Z2) {
|
||||
zs.add(z)
|
||||
}
|
||||
|
||||
// 1 public final static synthetic box\(I\)LZ2;
|
||||
// 1 INVOKESTATIC Z2\.box \(I\)LZ2;
|
||||
+1
-1
@@ -10,4 +10,4 @@ fun testNZ(z: Z?) = z?.toString()
|
||||
// @TestKt.class:
|
||||
// 0 INVOKESTATIC Z\$Erased\.toString
|
||||
// 0 INVOKESTATIC Z\-Erased\.toString
|
||||
// 2 INVOKESTATIC Z\.toString \(I\)Ljava/lang/String;
|
||||
// 2 INVOKESTATIC Z\.toString-impl \(I\)Ljava/lang/String;
|
||||
|
||||
+1
-1
@@ -9,4 +9,4 @@ fun test(xs: List<Z>) = xs[0]
|
||||
// @TestKt.class:
|
||||
// 0 INVOKEVIRTUAL Z\$Erased\.unbox
|
||||
// 0 INVOKEVIRTUAL Z\-Erased\.unbox
|
||||
// 1 INVOKEVIRTUAL Z\.unbox \(\)I
|
||||
// 1 INVOKEVIRTUAL Z\.unbox-impl \(\)I
|
||||
Reference in New Issue
Block a user