diff --git a/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassConstructors.kt b/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassConstructors.kt deleted file mode 100644 index 460a72e1e07..00000000000 --- a/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassConstructors.kt +++ /dev/null @@ -1,7 +0,0 @@ -// !LANGUAGE: +InlineClasses - -inline class Foo(val x: Int) { - constructor(x: Long) : this(x.toInt()) - internal constructor(x: Int, y: Int) : this(x + y) - private constructor(x: Short) : this(x.toInt()) -} \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassConstructors.txt b/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassConstructors.txt deleted file mode 100644 index 5da0485fab7..00000000000 --- a/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassConstructors.txt +++ /dev/null @@ -1,19 +0,0 @@ -@kotlin.Metadata -public final class Foo { - private final field x: int - private synthetic method (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 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 method equals(p0: 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 method toString(): java.lang.String - public static @org.jetbrains.annotations.NotNull method toString(p0: int): java.lang.String - public synthetic final method unbox(): int -} diff --git a/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassMembersVisibility.kt b/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassMembersVisibility.kt new file mode 100644 index 00000000000..8e29c2d58cc --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassMembersVisibility.kt @@ -0,0 +1,43 @@ +// !LANGUAGE: +InlineClasses + +inline class Z(val x: Int) { + constructor(x: Long) : this(x.toInt()) + internal constructor(x: Int, y: Int) : this(x + y) + private constructor(x: Short) : this(x.toInt()) + + fun publicFun() {} + internal fun internalFun() {} + private fun privateFun() {} + + fun String.publicExtensionFun() {} + internal fun String.internalExtensionFun() {} + private fun String.privateExtensionFun() {} + + val publicVal: Int get() = x + internal val internalVal: Int get() = x + private val privateVal: Int get() = x + + val String.publicExtensionVal: Int get() = x + internal val String.internalExtensionVal: Int get() = x + private val String.privateExtensionVal: Int get() = x + + var publicVar: Int + get() = x + set(v) {} + internal var internalVar: Int + get() = x + set(v) {} + private var privateVar: Int + get() = x + set(v) {} + + var String.publicExtensionVar: Int + get() = x + set(v) {} + internal var String.internalExtensionVar: Int + get() = x + set(v) {} + private var String.privateExtensionVar: Int + get() = x + set(v) {} +} \ No newline at end of file diff --git a/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassMembersVisibility.txt b/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassMembersVisibility.txt new file mode 100644 index 00000000000..263de174ac0 --- /dev/null +++ b/compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassMembersVisibility.txt @@ -0,0 +1,42 @@ +@kotlin.Metadata +public final class Z { + private final field x: int + private synthetic method (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 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 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 method toString(): java.lang.String + public static @org.jetbrains.annotations.NotNull method toString(p0: int): java.lang.String + public synthetic final method unbox(): int +} diff --git a/compiler/testData/codegen/bytecodeText/inlineClasses/inlineClassWrapperPrimaryConstructorIsSynthetic.kt b/compiler/testData/codegen/bytecodeText/inlineClasses/inlineClassWrapperPrimaryConstructorIsSynthetic.kt deleted file mode 100644 index 6445d792017..00000000000 --- a/compiler/testData/codegen/bytecodeText/inlineClasses/inlineClassWrapperPrimaryConstructorIsSynthetic.kt +++ /dev/null @@ -1,6 +0,0 @@ -// !LANGUAGE: +InlineClasses - -inline class Z(val x: Int) - -// 1 private synthetic \(I\)V -// 1 public static constructor\(I\)I \ No newline at end of file diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java index 5df5a3525fa..2c15f4e367c 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeListingTestGenerated.java @@ -284,9 +284,9 @@ public class BytecodeListingTestGenerated extends AbstractBytecodeListingTest { runTest("compiler/testData/codegen/bytecodeListing/inlineClasses/computablePropertiesInsideInlineClass.kt"); } - @TestMetadata("inlineClassConstructors.kt") - public void testInlineClassConstructors() throws Exception { - runTest("compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassConstructors.kt"); + @TestMetadata("inlineClassMembersVisibility.kt") + public void testInlineClassMembersVisibility() throws Exception { + runTest("compiler/testData/codegen/bytecodeListing/inlineClasses/inlineClassMembersVisibility.kt"); } @TestMetadata("inlineClassWithEverything.kt") diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeTextTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeTextTestGenerated.java index 4d4d92278a4..07ba78228a5 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeTextTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BytecodeTextTestGenerated.java @@ -2108,11 +2108,6 @@ public class BytecodeTextTestGenerated extends AbstractBytecodeTextTest { runTest("compiler/testData/codegen/bytecodeText/inlineClasses/inlineClassBoxingUnboxingInsideInlinedLambda.kt"); } - @TestMetadata("inlineClassWrapperPrimaryConstructorIsSynthetic.kt") - public void testInlineClassWrapperPrimaryConstructorIsSynthetic() throws Exception { - runTest("compiler/testData/codegen/bytecodeText/inlineClasses/inlineClassWrapperPrimaryConstructorIsSynthetic.kt"); - } - @TestMetadata("inlineClassesUnboxingAfterAssertionOperator.kt") public void testInlineClassesUnboxingAfterAssertionOperator() throws Exception { runTest("compiler/testData/codegen/bytecodeText/inlineClasses/inlineClassesUnboxingAfterAssertionOperator.kt");