From aec31bd88f4cc9b6baa4ecb7decf6561f9d49bd9 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Tue, 13 Sep 2016 11:32:05 +0300 Subject: [PATCH] Uninherit LanguageVersion from LanguageFeatureSettings Introduce LanguageVersionSettingsImpl to store everything related to the selected language version --- .../kotlin/cli/common/CLICompiler.java | 11 ++++------- .../kotlin/cli/jvm/repl/di/injection.kt | 4 ++-- .../kotlin/resolve/jvm/JvmAnalyzerFacade.kt | 4 ++-- .../jvm/TopDownAnalyzerFacadeForJVM.java | 4 ++-- .../kotlin/config/LanguageFeatureSettings.kt | 17 ++++++++++++----- .../renderer/AbstractDescriptorRendererTest.kt | 4 ++-- .../org/jetbrains/kotlin/tests/di/injection.kt | 4 ++-- ...ditionalBuiltInsMembersSignatureListsTest.kt | 4 ++-- .../kotlin/checkers/BaseDiagnosticsTest.java | 4 ++-- .../AbstractLocalClassProtoTest.kt | 4 ++-- .../AbstractBuiltInsWithJDKMembersTest.kt | 4 ++-- .../types/DefaultModalityModifiersTest.java | 4 ++-- .../idea/caches/resolve/JsAnalyzerFacade.kt | 4 ++-- .../idea/caches/resolve/KotlinResolveCache.kt | 4 ++-- .../navigation/SourceNavigationHelper.java | 4 ++-- .../kotlin/idea/project/ResolveElementCache.kt | 4 ++-- .../js/analyze/TopDownAnalyzerFacadeForJS.java | 4 ++-- 17 files changed, 46 insertions(+), 42 deletions(-) diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLICompiler.java b/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLICompiler.java index 9b302fd352a..2b9e6fb5030 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLICompiler.java +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLICompiler.java @@ -33,10 +33,7 @@ import org.jetbrains.kotlin.cli.common.messages.*; import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler; import org.jetbrains.kotlin.cli.jvm.compiler.CompileEnvironmentException; import org.jetbrains.kotlin.cli.jvm.compiler.CompilerJarLocator; -import org.jetbrains.kotlin.config.CommonConfigurationKeys; -import org.jetbrains.kotlin.config.CompilerConfiguration; -import org.jetbrains.kotlin.config.LanguageVersion; -import org.jetbrains.kotlin.config.Services; +import org.jetbrains.kotlin.config.*; import org.jetbrains.kotlin.progress.CompilationCanceledException; import org.jetbrains.kotlin.progress.CompilationCanceledStatus; import org.jetbrains.kotlin.progress.ProgressIndicatorAndCompilationCanceledStatus; @@ -250,9 +247,9 @@ public abstract class CLICompiler { } if (arguments.languageVersion != null) { - LanguageVersion languageFeatureSettings = LanguageVersion.fromVersionString(arguments.languageVersion); - if (languageFeatureSettings != null) { - configuration.put(CommonConfigurationKeys.LANGUAGE_FEATURE_SETTINGS, languageFeatureSettings); + LanguageVersion languageVersion = LanguageVersion.fromVersionString(arguments.languageVersion); + if (languageVersion != null) { + configuration.put(CommonConfigurationKeys.LANGUAGE_FEATURE_SETTINGS, new LanguageVersionSettingsImpl(languageVersion)); } else { List versionStrings = ArraysKt.map(LanguageVersion.values(), new Function1() { diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/repl/di/injection.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/repl/di/injection.kt index 83da0ab4b5d..fb3fc5a9efd 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/repl/di/injection.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/repl/di/injection.kt @@ -17,7 +17,7 @@ package org.jetbrains.kotlin.cli.jvm.repl.di import com.intellij.psi.search.GlobalSearchScope -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.container.* import org.jetbrains.kotlin.context.ModuleContext import org.jetbrains.kotlin.descriptors.PackagePartProvider @@ -44,7 +44,7 @@ fun createContainerForReplWithJava( ): ContainerForReplWithJava = createContainer("ReplWithJava") { useInstance(packagePartProvider) configureModule(moduleContext, JvmPlatform, bindingTrace) - configureJavaTopDownAnalysis(moduleContentScope, moduleContext.project, LookupTracker.DO_NOTHING, LanguageVersion.LATEST) + configureJavaTopDownAnalysis(moduleContentScope, moduleContext.project, LookupTracker.DO_NOTHING, LanguageVersionSettingsImpl.DEFAULT) useInstance(declarationProviderFactory) diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt index 9f04661d35a..d968ff1f02a 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/JvmAnalyzerFacade.kt @@ -20,7 +20,7 @@ import com.intellij.openapi.diagnostic.Logger import com.intellij.openapi.project.Project import com.intellij.psi.search.GlobalSearchScope import org.jetbrains.kotlin.analyzer.* -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.container.get import org.jetbrains.kotlin.context.ModuleContext import org.jetbrains.kotlin.descriptors.PackagePartProvider @@ -91,7 +91,7 @@ object JvmAnalyzerFacade : AnalyzerFacade() { moduleClassResolver, targetEnvironment, packagePartProvider, - LanguageVersion.LATEST // TODO: see KT-12410 + LanguageVersionSettingsImpl.DEFAULT // TODO: see KT-12410 ) val resolveSession = container.get() val javaDescriptorResolver = container.get() diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.java b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.java index ed08624e4a0..7221ae3aa3c 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.java +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/TopDownAnalyzerFacadeForJVM.java @@ -23,7 +23,7 @@ import org.jetbrains.kotlin.analyzer.AnalysisResult; import org.jetbrains.kotlin.config.CommonConfigurationKeys; import org.jetbrains.kotlin.config.CompilerConfiguration; import org.jetbrains.kotlin.config.JVMConfigurationKeys; -import org.jetbrains.kotlin.config.LanguageVersion; +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl; import org.jetbrains.kotlin.context.ContextKt; import org.jetbrains.kotlin.context.ModuleContext; import org.jetbrains.kotlin.context.MutableModuleContext; @@ -102,7 +102,7 @@ public enum TopDownAnalyzerFacadeForJVM { GlobalSearchScope.allScope(project), lookupTracker, packagePartProvider, - configuration.get(CommonConfigurationKeys.LANGUAGE_FEATURE_SETTINGS, LanguageVersion.LATEST) + configuration.get(CommonConfigurationKeys.LANGUAGE_FEATURE_SETTINGS, LanguageVersionSettingsImpl.DEFAULT) ); List additionalProviders = new ArrayList(); diff --git a/compiler/frontend/src/org/jetbrains/kotlin/config/LanguageFeatureSettings.kt b/compiler/frontend/src/org/jetbrains/kotlin/config/LanguageFeatureSettings.kt index 794984d0cbb..00175c10f1f 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/config/LanguageFeatureSettings.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/config/LanguageFeatureSettings.kt @@ -36,14 +36,10 @@ enum class LanguageFeature(val sinceVersion: LanguageVersion) { } } -enum class LanguageVersion(val versionString: String): LanguageFeatureSettings { +enum class LanguageVersion(val versionString: String) { KOTLIN_1_0("1.0"), KOTLIN_1_1("1.1"); - override fun supportsFeature(feature: LanguageFeature): Boolean { - return this.ordinal >= feature.sinceVersion.ordinal - } - companion object { @JvmStatic fun fromVersionString(str: String) = values().find { it.versionString == str } @@ -56,3 +52,14 @@ enum class LanguageVersion(val versionString: String): LanguageFeatureSettings { interface LanguageFeatureSettings { fun supportsFeature(feature: LanguageFeature): Boolean } + +class LanguageVersionSettingsImpl(private val languageVersion: LanguageVersion) : LanguageFeatureSettings { + override fun supportsFeature(feature: LanguageFeature): Boolean { + return languageVersion.ordinal >= feature.sinceVersion.ordinal + } + + companion object { + @JvmField + val DEFAULT = LanguageVersionSettingsImpl(LanguageVersion.LATEST) + } +} diff --git a/compiler/tests-common/org/jetbrains/kotlin/renderer/AbstractDescriptorRendererTest.kt b/compiler/tests-common/org/jetbrains/kotlin/renderer/AbstractDescriptorRendererTest.kt index 99564cae81a..4109d5a0e2e 100644 --- a/compiler/tests-common/org/jetbrains/kotlin/renderer/AbstractDescriptorRendererTest.kt +++ b/compiler/tests-common/org/jetbrains/kotlin/renderer/AbstractDescriptorRendererTest.kt @@ -20,7 +20,7 @@ import com.intellij.openapi.editor.impl.DocumentImpl import com.intellij.openapi.util.io.FileUtil import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.container.ComponentProvider import org.jetbrains.kotlin.container.get import org.jetbrains.kotlin.descriptors.ClassDescriptor @@ -62,7 +62,7 @@ abstract class AbstractDescriptorRendererTest : KotlinTestWithEnvironment() { CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace(), JvmPlatform, targetEnvironment, - LanguageVersion.LATEST + LanguageVersionSettingsImpl.DEFAULT ) val resolveSession = container.get() diff --git a/compiler/tests-common/org/jetbrains/kotlin/tests/di/injection.kt b/compiler/tests-common/org/jetbrains/kotlin/tests/di/injection.kt index 85b1c2bfc1c..c5f40617bd4 100644 --- a/compiler/tests-common/org/jetbrains/kotlin/tests/di/injection.kt +++ b/compiler/tests-common/org/jetbrains/kotlin/tests/di/injection.kt @@ -17,7 +17,7 @@ package org.jetbrains.kotlin.tests.di import com.intellij.openapi.project.Project -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.container.* import org.jetbrains.kotlin.context.ModuleContext import org.jetbrains.kotlin.descriptors.ModuleDescriptor @@ -34,7 +34,7 @@ fun createContainerForTests(project: Project, module: ModuleDescriptor): Contain return ContainerForTests(createContainer("Tests") { configureModule(ModuleContext(module, project), JvmPlatform) useInstance(LookupTracker.DO_NOTHING) - useInstance(LanguageVersion.LATEST) + useInstance(LanguageVersionSettingsImpl.DEFAULT) useImpl() }) } diff --git a/compiler/tests-java8/tests/org/jetbrains/kotlin/serialization/builtins/AdditionalBuiltInsMembersSignatureListsTest.kt b/compiler/tests-java8/tests/org/jetbrains/kotlin/serialization/builtins/AdditionalBuiltInsMembersSignatureListsTest.kt index a3dd887aea7..45973a32cdb 100644 --- a/compiler/tests-java8/tests/org/jetbrains/kotlin/serialization/builtins/AdditionalBuiltInsMembersSignatureListsTest.kt +++ b/compiler/tests-java8/tests/org/jetbrains/kotlin/serialization/builtins/AdditionalBuiltInsMembersSignatureListsTest.kt @@ -19,7 +19,7 @@ package org.jetbrains.kotlin.serialization.builtins import com.intellij.psi.search.GlobalSearchScope import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.context.ModuleContext import org.jetbrains.kotlin.descriptors.PackagePartProvider import org.jetbrains.kotlin.descriptors.resolveClassByFqName @@ -56,7 +56,7 @@ class AdditionalBuiltInsMembersSignatureListsTest : KotlinTestWithEnvironment() val container = createContainerForTopDownAnalyzerForJvm( moduleContext, CliLightClassGenerationSupport.CliBindingTrace(), providerFactory, GlobalSearchScope.allScope(environment.project), LookupTracker.DO_NOTHING, PackagePartProvider.EMPTY, - LanguageVersion.LATEST + LanguageVersionSettingsImpl.DEFAULT ) emptyModule.initialize(container.javaDescriptorResolver.packageFragmentProvider) diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/BaseDiagnosticsTest.java b/compiler/tests/org/jetbrains/kotlin/checkers/BaseDiagnosticsTest.java index 6a3b5875804..3f66885e9b4 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/BaseDiagnosticsTest.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/BaseDiagnosticsTest.java @@ -36,7 +36,7 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.kotlin.asJava.DuplicateJvmSignatureUtilKt; import org.jetbrains.kotlin.config.LanguageFeature; import org.jetbrains.kotlin.config.LanguageFeatureSettings; -import org.jetbrains.kotlin.config.LanguageVersion; +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl; import org.jetbrains.kotlin.descriptors.DeclarationDescriptor; import org.jetbrains.kotlin.diagnostics.*; import org.jetbrains.kotlin.load.java.InternalFlexibleTypeTransformer; @@ -194,7 +194,7 @@ public abstract class BaseDiagnosticsTest if (enabled != null) { return enabled; } - return LanguageVersion.LATEST.supportsFeature(feature); + return LanguageVersionSettingsImpl.DEFAULT.supportsFeature(feature); } }; } diff --git a/compiler/tests/org/jetbrains/kotlin/serialization/AbstractLocalClassProtoTest.kt b/compiler/tests/org/jetbrains/kotlin/serialization/AbstractLocalClassProtoTest.kt index bd36d9d598a..0a201e32aeb 100644 --- a/compiler/tests/org/jetbrains/kotlin/serialization/AbstractLocalClassProtoTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/serialization/AbstractLocalClassProtoTest.kt @@ -21,7 +21,7 @@ import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.descriptors.PackagePartProvider import org.jetbrains.kotlin.frontend.java.di.createContainerForTopDownAnalyzerForJvm import org.jetbrains.kotlin.incremental.components.LookupTracker @@ -61,7 +61,7 @@ abstract class AbstractLocalClassProtoTest : TestCaseWithTmpdir() { val container = createContainerForTopDownAnalyzerForJvm( moduleContext, CliLightClassGenerationSupport.NoScopeRecordCliBindingTrace(), providerFactory, GlobalSearchScope.allScope(environment.project), LookupTracker.DO_NOTHING, PackagePartProvider.EMPTY, - LanguageVersion.LATEST + LanguageVersionSettingsImpl.DEFAULT ) moduleContext.initializeModuleContents(container.javaDescriptorResolver.packageFragmentProvider) diff --git a/compiler/tests/org/jetbrains/kotlin/serialization/builtins/AbstractBuiltInsWithJDKMembersTest.kt b/compiler/tests/org/jetbrains/kotlin/serialization/builtins/AbstractBuiltInsWithJDKMembersTest.kt index 3e73e19b2bb..755bf1ebc54 100644 --- a/compiler/tests/org/jetbrains/kotlin/serialization/builtins/AbstractBuiltInsWithJDKMembersTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/serialization/builtins/AbstractBuiltInsWithJDKMembersTest.kt @@ -20,7 +20,7 @@ import com.intellij.psi.search.GlobalSearchScope import org.jetbrains.kotlin.builtins.KotlinBuiltIns.* import org.jetbrains.kotlin.cli.jvm.compiler.CliLightClassGenerationSupport import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.context.ModuleContext import org.jetbrains.kotlin.descriptors.PackagePartProvider import org.jetbrains.kotlin.frontend.java.di.createContainerForTopDownAnalyzerForJvm @@ -64,7 +64,7 @@ abstract class AbstractBuiltInsWithJDKMembersTest : KotlinTestWithEnvironment() val container = createContainerForTopDownAnalyzerForJvm( moduleContext, CliLightClassGenerationSupport.CliBindingTrace(), providerFactory, GlobalSearchScope.allScope(environment.project), LookupTracker.DO_NOTHING, PackagePartProvider.EMPTY, - LanguageVersion.LATEST + LanguageVersionSettingsImpl.DEFAULT ) emptyModule.initialize(container.javaDescriptorResolver.packageFragmentProvider) diff --git a/compiler/tests/org/jetbrains/kotlin/types/DefaultModalityModifiersTest.java b/compiler/tests/org/jetbrains/kotlin/types/DefaultModalityModifiersTest.java index 60f7011653a..5ab9bce66ca 100644 --- a/compiler/tests/org/jetbrains/kotlin/types/DefaultModalityModifiersTest.java +++ b/compiler/tests/org/jetbrains/kotlin/types/DefaultModalityModifiersTest.java @@ -21,7 +21,7 @@ import kotlin.jvm.functions.Function1; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.analyzer.AnalysisResult; import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment; -import org.jetbrains.kotlin.config.LanguageVersion; +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl; import org.jetbrains.kotlin.context.ContextKt; import org.jetbrains.kotlin.context.ModuleContext; import org.jetbrains.kotlin.descriptors.*; @@ -111,7 +111,7 @@ public class DefaultModalityModifiersTest extends KotlinTestWithEnvironment { Collections.singleton(aClass.getContainingKtFile())), new BindingTraceContext(), TargetPlatform.Default.INSTANCE, - LanguageVersion.LATEST + LanguageVersionSettingsImpl.DEFAULT ); return (ClassDescriptorWithResolutionScopes) resolveSession.getClassDescriptor(aClass, NoLookupLocation.FROM_TEST); diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JsAnalyzerFacade.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JsAnalyzerFacade.kt index b9e8d51a09c..ec8475f25b6 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JsAnalyzerFacade.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JsAnalyzerFacade.kt @@ -20,7 +20,7 @@ import com.intellij.openapi.roots.OrderRootType import com.intellij.psi.search.GlobalSearchScope import com.intellij.util.PathUtil import org.jetbrains.kotlin.analyzer.* -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.container.get import org.jetbrains.kotlin.context.ModuleContext import org.jetbrains.kotlin.descriptors.PackagePartProvider @@ -57,7 +57,7 @@ object JsAnalyzerFacade : AnalyzerFacade() { val container = createContainerForLazyResolve( moduleContext, declarationProviderFactory, BindingTraceContext(), JsPlatform, targetEnvironment, - LanguageVersion.LATEST // TODO: see KT-12410 + LanguageVersionSettingsImpl.DEFAULT // TODO: see KT-12410 ) var packageFragmentProvider = container.get().packageFragmentProvider diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinResolveCache.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinResolveCache.kt index ba937b0bfed..6319df655c4 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinResolveCache.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinResolveCache.kt @@ -23,7 +23,7 @@ import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import com.intellij.psi.util.PsiTreeUtil import org.jetbrains.kotlin.analyzer.AnalysisResult -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.container.ComponentProvider import org.jetbrains.kotlin.container.get import org.jetbrains.kotlin.context.GlobalContext @@ -173,7 +173,7 @@ private object KotlinResolveDataProvider { trace, targetPlatform, componentProvider.get(), - LanguageVersion.LATEST // TODO: see KT-12410 + LanguageVersionSettingsImpl.DEFAULT // TODO: see KT-12410 ).get() lazyTopDownAnalyzer.analyzeDeclarations( diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java index 57b858a75b8..6887d26795a 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java @@ -40,7 +40,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.TestOnly; import org.jetbrains.kotlin.builtins.DefaultBuiltIns; -import org.jetbrains.kotlin.config.LanguageVersion; +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl; import org.jetbrains.kotlin.context.ContextKt; import org.jetbrains.kotlin.context.MutableModuleContext; import org.jetbrains.kotlin.descriptors.CallableDescriptor; @@ -260,7 +260,7 @@ public class SourceNavigationHelper { providerFactory, new BindingTraceContext(), platform, - LanguageVersion.LATEST // TODO: see KT-12410 + LanguageVersionSettingsImpl.DEFAULT // TODO: see KT-12410 ); newModuleContext.initializeModuleContents(resolveSession.getPackageFragmentProvider()); diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt index c8f3992ffb2..199ba8486e1 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt @@ -23,7 +23,7 @@ import com.intellij.psi.util.CachedValuesManager import com.intellij.psi.util.PsiModificationTracker import com.intellij.util.containers.ContainerUtil import org.jetbrains.kotlin.cfg.ControlFlowInformationProvider -import org.jetbrains.kotlin.config.LanguageVersion +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.container.get import org.jetbrains.kotlin.context.SimpleGlobalContext import org.jetbrains.kotlin.context.withModule @@ -590,7 +590,7 @@ class ResolveElementCache( trace, targetPlatform, statementFilter, - LanguageVersion.LATEST // TODO: see KT-12410 + LanguageVersionSettingsImpl.DEFAULT // TODO: see KT-12410 ).get() } diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/analyze/TopDownAnalyzerFacadeForJS.java b/js/js.frontend/src/org/jetbrains/kotlin/js/analyze/TopDownAnalyzerFacadeForJS.java index c6f398363ba..4dcfbe4604a 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/analyze/TopDownAnalyzerFacadeForJS.java +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/analyze/TopDownAnalyzerFacadeForJS.java @@ -18,7 +18,7 @@ package org.jetbrains.kotlin.js.analyze; import org.jetbrains.annotations.NotNull; import org.jetbrains.kotlin.config.CommonConfigurationKeys; -import org.jetbrains.kotlin.config.LanguageVersion; +import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl; import org.jetbrains.kotlin.context.ContextKt; import org.jetbrains.kotlin.context.ModuleContext; import org.jetbrains.kotlin.context.MutableModuleContext; @@ -78,7 +78,7 @@ public final class TopDownAnalyzerFacadeForJS { LazyTopDownAnalyzerForTopLevel analyzerForJs = InjectionKt.createTopDownAnalyzerForJs( moduleContext, trace, new FileBasedDeclarationProviderFactory(moduleContext.getStorageManager(), allFiles), - config.getConfiguration().get(CommonConfigurationKeys.LANGUAGE_FEATURE_SETTINGS, LanguageVersion.LATEST) + config.getConfiguration().get(CommonConfigurationKeys.LANGUAGE_FEATURE_SETTINGS, LanguageVersionSettingsImpl.DEFAULT) ); analyzerForJs.analyzeFiles(TopDownAnalysisMode.TopLevelDeclarations, files, Collections.emptyList()); return JsAnalysisResult.success(trace, moduleContext.getModule());