diff --git a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/ClassMapperLite.kt b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/ClassMapperLite.kt index 21360ac2130..b1d7dd0f144 100644 --- a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/ClassMapperLite.kt +++ b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/ClassMapperLite.kt @@ -63,7 +63,9 @@ object ClassMapperLite { add("reflect/KFunction$i", "kotlin/reflect/KFunction") } - for (klass in listOf("Char", "Byte", "Short", "Int", "Float", "Long", "Double", "String", "Enum", "Boolean")) { + //Boolean is purposefully omitted from this list, even though it has a Companion Object. + //This assures that an older compiler won't get confused by the new signature, preventing a bug in compatibility. + for (klass in listOf("Char", "Byte", "Short", "Int", "Float", "Long", "Double", "String", "Enum")) { add("$klass.Companion", "kotlin/jvm/internal/${klass}CompanionObject") } }