From edb4fd1dfd12de8f3e703788023f47761eec5e77 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Wed, 11 Jan 2017 16:45:51 +0300 Subject: [PATCH] Do not emit pre-release flag if -Xskip-metadata-version-check is used The -Xskip-metadata-version-check command line argument is supposed to be used to avoid getting errors only; the side effect that it also caused compiler to write the pre-release flag to binaries was a mistake and is fixed now --- .../cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt | 3 --- .../kotlin/load/kotlin/DeserializedDescriptorResolver.kt | 4 +++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt index d72c8f35352..84e9a3d5b98 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt @@ -38,7 +38,6 @@ import org.jetbrains.kotlin.compiler.plugin.PluginCliOptionProcessingException import org.jetbrains.kotlin.compiler.plugin.cliPluginUsageString import org.jetbrains.kotlin.config.* import org.jetbrains.kotlin.load.java.JvmAbi -import org.jetbrains.kotlin.load.kotlin.DeserializedDescriptorResolver import org.jetbrains.kotlin.load.kotlin.JvmMetadataVersion import org.jetbrains.kotlin.load.kotlin.incremental.components.IncrementalCompilationComponents import org.jetbrains.kotlin.script.KotlinScriptDefinitionFromAnnotatedTemplate @@ -117,8 +116,6 @@ class K2JVMCompiler : CLICompiler() { if (arguments.skipMetadataVersionCheck) { JvmMetadataVersion.skipCheck = true - @Suppress("DEPRECATION") - DeserializedDescriptorResolver.IS_PRE_RELEASE = true } if (arguments.includeRuntime) { diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/DeserializedDescriptorResolver.kt b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/DeserializedDescriptorResolver.kt index f19f403f681..6398eb09754 100644 --- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/DeserializedDescriptorResolver.kt +++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/DeserializedDescriptorResolver.kt @@ -74,7 +74,9 @@ class DeserializedDescriptorResolver { } private val KotlinJvmBinaryClass.isPreReleaseInvisible: Boolean - get() = !IS_PRE_RELEASE && (classHeader.isPreRelease || classHeader.metadataVersion == KOTLIN_1_1_EAP_METADATA_VERSION) + get() = !JvmMetadataVersion.skipCheck && + !IS_PRE_RELEASE && + (classHeader.isPreRelease || classHeader.metadataVersion == KOTLIN_1_1_EAP_METADATA_VERSION) internal fun readData(kotlinClass: KotlinJvmBinaryClass, expectedKinds: Set): Array? { val header = kotlinClass.classHeader