From a879cb0cfd4847ea42a95c1f2437a28941703930 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Mon, 13 Mar 2017 10:53:15 +0300 Subject: [PATCH] Minor, take LanguageVersionSettings in CompilerDeserializationConfiguration --- .../jetbrains/kotlin/codegen/state/GenerationState.kt | 4 ++-- .../kotlin/cli/jvm/compiler/JvmPackagePartProvider.kt | 3 ++- .../resolve/CompilerDeserializationConfiguration.kt | 9 ++++----- .../src/org/jetbrains/kotlin/js/config/JsConfig.java | 4 +++- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt index 74b42cc681e..087d779b8f9 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/state/GenerationState.kt @@ -45,7 +45,6 @@ import org.jetbrains.kotlin.resolve.* import org.jetbrains.kotlin.resolve.diagnostics.Diagnostics import org.jetbrains.kotlin.resolve.jvm.JvmClassName import org.jetbrains.kotlin.serialization.deserialization.DeserializationConfiguration -import org.jetbrains.org.objectweb.asm.Opcodes import java.io.File class GenerationState @JvmOverloads constructor( @@ -92,7 +91,8 @@ class GenerationState @JvmOverloads constructor( val incrementalCacheForThisTarget: IncrementalCache? val packagesWithObsoleteParts: Set val obsoleteMultifileClasses: List - val deserializationConfiguration: DeserializationConfiguration = CompilerDeserializationConfiguration(configuration) + val deserializationConfiguration: DeserializationConfiguration = + CompilerDeserializationConfiguration(configuration.languageVersionSettings) init { val icComponents = configuration.get(JVMConfigurationKeys.INCREMENTAL_COMPILATION_COMPONENTS) diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/JvmPackagePartProvider.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/JvmPackagePartProvider.kt index d12f0b6f628..2504086c7ea 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/JvmPackagePartProvider.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/JvmPackagePartProvider.kt @@ -21,6 +21,7 @@ import com.intellij.psi.search.GlobalSearchScope import com.intellij.util.SmartList import org.jetbrains.kotlin.cli.jvm.config.JvmClasspathRoot import org.jetbrains.kotlin.config.JVMConfigurationKeys +import org.jetbrains.kotlin.config.languageVersionSettings import org.jetbrains.kotlin.descriptors.PackagePartProvider import org.jetbrains.kotlin.load.kotlin.ModuleMapping import org.jetbrains.kotlin.load.kotlin.PackageParts @@ -33,7 +34,7 @@ class JvmPackagePartProvider( ) : PackagePartProvider { private data class ModuleMappingInfo(val root: VirtualFile, val mapping: ModuleMapping) - private val deserializationConfiguration = CompilerDeserializationConfiguration(env.configuration) + private val deserializationConfiguration = CompilerDeserializationConfiguration(env.configuration.languageVersionSettings) private val notLoadedRoots by lazy(LazyThreadSafetyMode.NONE) { env.configuration.getList(JVMConfigurationKeys.CONTENT_ROOTS) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/CompilerDeserializationConfiguration.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/CompilerDeserializationConfiguration.kt index 7b4776a5967..a9f43f44da7 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/CompilerDeserializationConfiguration.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/CompilerDeserializationConfiguration.kt @@ -16,13 +16,12 @@ package org.jetbrains.kotlin.resolve -import org.jetbrains.kotlin.config.CompilerConfiguration import org.jetbrains.kotlin.config.LanguageFeature -import org.jetbrains.kotlin.config.languageVersionSettings +import org.jetbrains.kotlin.config.LanguageVersionSettings import org.jetbrains.kotlin.serialization.deserialization.DeserializationConfiguration -class CompilerDeserializationConfiguration(configuration: CompilerConfiguration) : DeserializationConfiguration { - override val typeAliasesAllowed = configuration.languageVersionSettings.supportsFeature(LanguageFeature.TypeAliases) +class CompilerDeserializationConfiguration(languageVersionSettings: LanguageVersionSettings) : DeserializationConfiguration { + override val typeAliasesAllowed = languageVersionSettings.supportsFeature(LanguageFeature.TypeAliases) - override val skipMetadataVersionCheck = configuration.languageVersionSettings.skipMetadataVersionCheck + override val skipMetadataVersionCheck = languageVersionSettings.skipMetadataVersionCheck } diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java b/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java index 53a91f9f137..b17945e4ab5 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/config/JsConfig.java @@ -22,6 +22,7 @@ import kotlin.collections.CollectionsKt; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.kotlin.config.CommonConfigurationKeys; +import org.jetbrains.kotlin.config.CommonConfigurationKeysKt; import org.jetbrains.kotlin.config.CompilerConfiguration; import org.jetbrains.kotlin.descriptors.PackageFragmentProvider; import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl; @@ -128,7 +129,8 @@ public abstract class JsConfig { ); JsModuleDescriptor rawDescriptor = KotlinJavascriptSerializationUtil.readModule( - metadata.getBody(), storageManager, moduleDescriptor, new CompilerDeserializationConfiguration(configuration) + metadata.getBody(), storageManager, moduleDescriptor, + new CompilerDeserializationConfiguration(CommonConfigurationKeysKt.getLanguageVersionSettings(configuration)) ); PackageFragmentProvider provider = rawDescriptor.getData();