From b48d0553345d12a66ae4dce68aacdd04dda9d6da Mon Sep 17 00:00:00 2001 From: Alexey Sedunov Date: Wed, 25 Jul 2018 13:22:59 +0300 Subject: [PATCH] Configuration: Drop coroutines for language >= 1.3 #KT-25681 Fixed Original commit: a4907812133e92b47c89e1385a6c0d9e782440f5 --- .../src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt | 5 +++-- .../src/org/jetbrains/kotlin/config/facetSerialization.kt | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt b/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt index 35d34a6fdea..11f0be6a6ba 100644 --- a/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt +++ b/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt @@ -187,14 +187,15 @@ class KotlinFacetSettings { } } - var coroutineSupport: LanguageFeature.State + var coroutineSupport: LanguageFeature.State? get() { val languageVersion = languageLevel ?: return LanguageFeature.Coroutines.defaultState if (languageVersion < LanguageFeature.Coroutines.sinceVersion!!) return LanguageFeature.State.DISABLED - return CoroutineSupport.byCompilerArguments(compilerArguments) + return CoroutineSupport.byCompilerArgumentsOrNull(compilerArguments) } set(value) { compilerArguments!!.coroutinesState = when (value) { + null -> CommonCompilerArguments.DEFAULT LanguageFeature.State.ENABLED -> CommonCompilerArguments.ENABLE LanguageFeature.State.ENABLED_WITH_WARNING -> CommonCompilerArguments.WARN LanguageFeature.State.ENABLED_WITH_ERROR, LanguageFeature.State.DISABLED -> CommonCompilerArguments.ERROR diff --git a/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt b/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt index c4a7e07407a..85b0b7cba4b 100644 --- a/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt +++ b/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt @@ -153,6 +153,7 @@ private fun readV2Config(element: Element): KotlinFacetSettings { compilerArguments!!.coroutinesState = CommonCompilerArguments.WARN args.any { arg -> arg.attributes[0].value == "coroutinesError" && arg.attributes[1].booleanValue } -> compilerArguments!!.coroutinesState = CommonCompilerArguments.ERROR + else -> compilerArguments!!.coroutinesState = CommonCompilerArguments.DEFAULT } } }