diff --git a/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt b/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt index 0bae3e96fca..295ce365156 100644 --- a/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt +++ b/compiler/serialization/src/org/jetbrains/kotlin/serialization/DescriptorSerializer.kt @@ -89,7 +89,7 @@ class DescriptorSerializer private constructor( } } - if (classDescriptor.kind != ClassKind.ENUM_ENTRY) { + if (!DescriptorUtils.isAnonymousObject(classDescriptor) && classDescriptor.kind != ClassKind.ENUM_ENTRY) { for (descriptor in classDescriptor.constructors) { builder.addConstructor(constructorProto(descriptor)) } diff --git a/compiler/testData/codegen/box/reflection/constructors/classesWithoutConstructors.kt b/compiler/testData/codegen/box/reflection/constructors/classesWithoutConstructors.kt index a0ec6be94ff..4c9a5e84c6d 100644 --- a/compiler/testData/codegen/box/reflection/constructors/classesWithoutConstructors.kt +++ b/compiler/testData/codegen/box/reflection/constructors/classesWithoutConstructors.kt @@ -18,6 +18,7 @@ fun box(): String { assertTrue(Interface::class.constructors.isEmpty()) assertTrue(Obj::class.constructors.isEmpty()) assertTrue(C.Companion::class.constructors.isEmpty()) + assertTrue(object {}::class.constructors.isEmpty()) return "OK" } diff --git a/compiler/testData/codegen/box/reflection/constructors/primaryConstructor.kt b/compiler/testData/codegen/box/reflection/constructors/primaryConstructor.kt index 05da836d9b8..59f7bb06c5f 100644 --- a/compiler/testData/codegen/box/reflection/constructors/primaryConstructor.kt +++ b/compiler/testData/codegen/box/reflection/constructors/primaryConstructor.kt @@ -49,11 +49,13 @@ fun box(): String { val p4 = TwoSecondaries::class.primaryConstructor assertNull(p4) - assertNotNull(En::class.primaryConstructor) // TODO: maybe primaryConstructor should be null for enum classes + assertNotNull(En::class.primaryConstructor) assertNull(I::class.primaryConstructor) assertNull(O::class.primaryConstructor) assertNull(C.Companion::class.primaryConstructor) + assertNull(object {}::class.primaryConstructor) + return "OK" } diff --git a/compiler/testData/serialization/local/anonymousObject.txt b/compiler/testData/serialization/local/anonymousObject.txt index 57a3b9a86d7..a8cd5787ca7 100644 --- a/compiler/testData/serialization/local/anonymousObject.txt +++ b/compiler/testData/serialization/local/anonymousObject.txt @@ -1,4 +1,3 @@ local final class `AnonymousObjectKt$main$1` : java.lang.Runnable -public constructor `AnonymousObjectKt$main$1`() public open override /*1*/ fun run(): kotlin.Unit diff --git a/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt b/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt index 0ad45f44f37..1852306cc5b 100644 --- a/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt +++ b/compiler/util/src/org/jetbrains/kotlin/utils/KotlinJavascriptMetadataUtils.kt @@ -32,7 +32,7 @@ class JsMetadataVersion(vararg numbers: Int) : BinaryVersion(*numbers) { companion object { @JvmField - val INSTANCE = JsMetadataVersion(1, 2, 2) + val INSTANCE = JsMetadataVersion(1, 2, 3) @JvmField val INVALID_VERSION = JsMetadataVersion() diff --git a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmMetadataVersion.kt b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmMetadataVersion.kt index 63994c1cb7d..af2d12e09f4 100644 --- a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmMetadataVersion.kt +++ b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmMetadataVersion.kt @@ -18,7 +18,7 @@ class JvmMetadataVersion(vararg numbers: Int) : BinaryVersion(*numbers) { companion object { @JvmField - val INSTANCE = JvmMetadataVersion(1, 1, 10) + val INSTANCE = JvmMetadataVersion(1, 1, 11) @JvmField val INVALID_VERSION = JvmMetadataVersion() diff --git a/core/metadata/src/org/jetbrains/kotlin/metadata/builtins/BuiltInsBinaryVersion.kt b/core/metadata/src/org/jetbrains/kotlin/metadata/builtins/BuiltInsBinaryVersion.kt index a1e16792f66..1b546ff8000 100644 --- a/core/metadata/src/org/jetbrains/kotlin/metadata/builtins/BuiltInsBinaryVersion.kt +++ b/core/metadata/src/org/jetbrains/kotlin/metadata/builtins/BuiltInsBinaryVersion.kt @@ -18,7 +18,7 @@ class BuiltInsBinaryVersion(vararg numbers: Int) : BinaryVersion(*numbers) { companion object { @JvmField - val INSTANCE = BuiltInsBinaryVersion(1, 0, 3) + val INSTANCE = BuiltInsBinaryVersion(1, 0, 4) @JvmField val INVALID_VERSION = BuiltInsBinaryVersion()