Remove obsolete check for language version and IR backends
This commit is contained in:
-7
@@ -21,7 +21,6 @@ import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
|
|||||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity.WARNING
|
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity.WARNING
|
||||||
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
|
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
|
||||||
import org.jetbrains.kotlin.config.*
|
import org.jetbrains.kotlin.config.*
|
||||||
import java.util.*
|
|
||||||
|
|
||||||
@SuppressWarnings("WeakerAccess")
|
@SuppressWarnings("WeakerAccess")
|
||||||
abstract class CommonCompilerArguments : CommonToolArguments() {
|
abstract class CommonCompilerArguments : CommonToolArguments() {
|
||||||
@@ -563,8 +562,6 @@ abstract class CommonCompilerArguments : CommonToolArguments() {
|
|||||||
checkLanguageVersionIsStable(languageVersion, collector)
|
checkLanguageVersionIsStable(languageVersion, collector)
|
||||||
checkOutdatedVersions(languageVersion, apiVersion, collector)
|
checkOutdatedVersions(languageVersion, apiVersion, collector)
|
||||||
checkProgressiveMode(languageVersion, collector)
|
checkProgressiveMode(languageVersion, collector)
|
||||||
|
|
||||||
checkIrSupport(languageVersionSettings, collector)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return languageVersionSettings
|
return languageVersionSettings
|
||||||
@@ -635,10 +632,6 @@ abstract class CommonCompilerArguments : CommonToolArguments() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected open fun checkIrSupport(languageVersionSettings: LanguageVersionSettings, collector: MessageCollector) {
|
|
||||||
// backend-specific
|
|
||||||
}
|
|
||||||
|
|
||||||
private enum class VersionKind(val text: String) {
|
private enum class VersionKind(val text: String) {
|
||||||
LANGUAGE("Language"), API("API")
|
LANGUAGE("Language"), API("API")
|
||||||
}
|
}
|
||||||
|
|||||||
-17
@@ -6,12 +6,8 @@
|
|||||||
package org.jetbrains.kotlin.cli.common.arguments
|
package org.jetbrains.kotlin.cli.common.arguments
|
||||||
|
|
||||||
import org.jetbrains.kotlin.cli.common.arguments.K2JsArgumentConstants.*
|
import org.jetbrains.kotlin.cli.common.arguments.K2JsArgumentConstants.*
|
||||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
|
|
||||||
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
|
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
|
||||||
import org.jetbrains.kotlin.config.ApiVersion
|
|
||||||
import org.jetbrains.kotlin.config.LanguageFeature
|
import org.jetbrains.kotlin.config.LanguageFeature
|
||||||
import org.jetbrains.kotlin.config.LanguageVersion
|
|
||||||
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
|
||||||
|
|
||||||
class K2JSCompilerArguments : CommonCompilerArguments() {
|
class K2JSCompilerArguments : CommonCompilerArguments() {
|
||||||
companion object {
|
companion object {
|
||||||
@@ -236,19 +232,6 @@ class K2JSCompilerArguments : CommonCompilerArguments() {
|
|||||||
@Argument(value = "-Xwasm", description = "Use experimental WebAssembly compiler backend")
|
@Argument(value = "-Xwasm", description = "Use experimental WebAssembly compiler backend")
|
||||||
var wasm: Boolean by FreezableVar(false)
|
var wasm: Boolean by FreezableVar(false)
|
||||||
|
|
||||||
override fun checkIrSupport(languageVersionSettings: LanguageVersionSettings, collector: MessageCollector) {
|
|
||||||
if (!isIrBackendEnabled()) return
|
|
||||||
|
|
||||||
if (languageVersionSettings.languageVersion < LanguageVersion.KOTLIN_1_4
|
|
||||||
|| languageVersionSettings.apiVersion < ApiVersion.KOTLIN_1_4
|
|
||||||
) {
|
|
||||||
collector.report(
|
|
||||||
CompilerMessageSeverity.ERROR,
|
|
||||||
"IR backend cannot be used with language or API version below 1.4"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun configureLanguageFeatures(collector: MessageCollector): MutableMap<LanguageFeature, LanguageFeature.State> {
|
override fun configureLanguageFeatures(collector: MessageCollector): MutableMap<LanguageFeature, LanguageFeature.State> {
|
||||||
return super.configureLanguageFeatures(collector).apply {
|
return super.configureLanguageFeatures(collector).apply {
|
||||||
if (extensionFunctionsInExternals) {
|
if (extensionFunctionsInExternals) {
|
||||||
|
|||||||
-14
@@ -557,18 +557,4 @@ default: `indy-with-constants` for JVM target 9 or greater, `inline` otherwise""
|
|||||||
}
|
}
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun checkIrSupport(languageVersionSettings: LanguageVersionSettings, collector: MessageCollector) {
|
|
||||||
if (!useIR || useOldBackend) return
|
|
||||||
|
|
||||||
if (languageVersionSettings.languageVersion < LanguageVersion.KOTLIN_1_3
|
|
||||||
|| languageVersionSettings.apiVersion < ApiVersion.KOTLIN_1_3
|
|
||||||
) {
|
|
||||||
collector.report(
|
|
||||||
CompilerMessageSeverity.STRONG_WARNING,
|
|
||||||
"IR backend does not support language or API version lower than 1.3. " +
|
|
||||||
"This can lead to unexpected behavior or compilation failures"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
-11
@@ -358,17 +358,6 @@ class K2NativeCompilerArguments : CommonCompilerArguments() {
|
|||||||
if (printIr)
|
if (printIr)
|
||||||
phasesToDumpAfter = arrayOf("ALL")
|
phasesToDumpAfter = arrayOf("ALL")
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun checkIrSupport(languageVersionSettings: LanguageVersionSettings, collector: MessageCollector) {
|
|
||||||
if (languageVersionSettings.languageVersion < LanguageVersion.KOTLIN_1_4
|
|
||||||
|| languageVersionSettings.apiVersion < ApiVersion.KOTLIN_1_4
|
|
||||||
) {
|
|
||||||
collector.report(
|
|
||||||
severity = CompilerMessageSeverity.ERROR,
|
|
||||||
message = "Native backend cannot be used with language or API version below 1.4"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const val EMBED_BITCODE_FLAG = "-Xembed-bitcode"
|
const val EMBED_BITCODE_FLAG = "-Xembed-bitcode"
|
||||||
|
|||||||
Reference in New Issue
Block a user