Load compiler language version settings for codegen tests
This commit is contained in:
+1
-1
@@ -42,7 +42,7 @@ data class CompilerTestLanguageVersionSettings(
|
||||
override fun <T> getFlag(flag: AnalysisFlag<T>): T = analysisFlags[flag] as T? ?: flag.defaultValue
|
||||
}
|
||||
|
||||
private fun specificFeaturesForTests(): Map<LanguageFeature, LanguageFeature.State> {
|
||||
fun specificFeaturesForTests(): Map<LanguageFeature, LanguageFeature.State> {
|
||||
return if (System.getProperty("kotlin.ni") == "true")
|
||||
mapOf(LanguageFeature.NewInference to LanguageFeature.State.ENABLED)
|
||||
else
|
||||
|
||||
@@ -32,6 +32,8 @@ import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.kotlin.backend.common.output.OutputFile;
|
||||
import org.jetbrains.kotlin.backend.common.output.SimpleOutputFileCollection;
|
||||
import org.jetbrains.kotlin.checkers.CheckerTestUtil;
|
||||
import org.jetbrains.kotlin.checkers.CompilerTestLanguageVersionSettings;
|
||||
import org.jetbrains.kotlin.checkers.CompilerTestLanguageVersionSettingsKt;
|
||||
import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys;
|
||||
import org.jetbrains.kotlin.cli.common.output.outputUtils.OutputUtilsKt;
|
||||
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
|
||||
@@ -195,9 +197,16 @@ public abstract class CodegenTestCase extends KtUsefulTestCase {
|
||||
CommonConfigurationKeysKt.setLanguageVersionSettings(configuration, explicitLanguageVersionSettings);
|
||||
}
|
||||
else if (explicitLanguageVersion != null) {
|
||||
CompilerTestLanguageVersionSettings compilerLanguageVersionSettings = new CompilerTestLanguageVersionSettings(
|
||||
Collections.emptyMap(),
|
||||
ApiVersion.createByLanguageVersion(explicitLanguageVersion),
|
||||
explicitLanguageVersion,
|
||||
CompilerTestLanguageVersionSettingsKt.specificFeaturesForTests(),
|
||||
Collections.emptyMap()
|
||||
);
|
||||
CommonConfigurationKeysKt.setLanguageVersionSettings(
|
||||
configuration,
|
||||
new LanguageVersionSettingsImpl(explicitLanguageVersion, ApiVersion.createByLanguageVersion(explicitLanguageVersion))
|
||||
compilerLanguageVersionSettings
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user