Added -Xdisable-fake-override-validator
(cherry picked from commit d921dc1f946114fcf4a4fbdb0bf3593c0b97b9a7)
This commit is contained in:
committed by
Vasily Levchenko
parent
0192182f11
commit
92722a480e
@@ -249,6 +249,7 @@ class K2Native : CLICompiler<K2NativeCompilerArguments>() {
|
||||
parseShortModuleName(arguments, configuration, outputKind)?.let {
|
||||
put(SHORT_MODULE_NAME, it)
|
||||
}
|
||||
put(DISABLE_FAKE_OVERRIDE_VALIDATOR, arguments.disableFakeOverrideValidator)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -145,6 +145,9 @@ class K2NativeCompilerArguments : CommonCompilerArguments() {
|
||||
)
|
||||
var exportedLibraries: Array<String>? = null
|
||||
|
||||
@Argument(value="-Xdisable-fake-override-validator", description = "Disable IR fake override validator")
|
||||
var disableFakeOverrideValidator: Boolean = false
|
||||
|
||||
@Argument(
|
||||
value = "-Xframework-import-header",
|
||||
valueDescription = "<header>",
|
||||
|
||||
+2
@@ -18,6 +18,8 @@ class KonanConfigKeys {
|
||||
= CompilerConfigurationKey.create("compatible compiler versions")
|
||||
val DEBUG: CompilerConfigurationKey<Boolean>
|
||||
= CompilerConfigurationKey.create("add debug information")
|
||||
val DISABLE_FAKE_OVERRIDE_VALIDATOR: CompilerConfigurationKey<Boolean>
|
||||
= CompilerConfigurationKey.create("disable fake override validator")
|
||||
val DISABLED_PHASES: CompilerConfigurationKey<List<String>>
|
||||
= CompilerConfigurationKey.create("disable backend phases")
|
||||
val BITCODE_EMBEDDING_MODE: CompilerConfigurationKey<BitcodeEmbedding.Mode>
|
||||
|
||||
+4
-2
@@ -254,8 +254,10 @@ internal val psiToIrPhase = konanUnitPhase(
|
||||
symbolTable.noUnboundLeft("Unbound symbols left after linker")
|
||||
|
||||
module.acceptVoid(ManglerChecker(KonanManglerIr, Ir2DescriptorManglerAdapter(KonanManglerDesc)))
|
||||
val fakeOverrideChecker = FakeOverrideChecker(KonanManglerIr, KonanManglerDesc)
|
||||
linker.modules.values.forEach{ fakeOverrideChecker.check(it) }
|
||||
if (!config.configuration.getBoolean(KonanConfigKeys.DISABLE_FAKE_OVERRIDE_VALIDATOR)) {
|
||||
val fakeOverrideChecker = FakeOverrideChecker(KonanManglerIr, KonanManglerDesc)
|
||||
linker.modules.values.forEach { fakeOverrideChecker.check(it) }
|
||||
}
|
||||
|
||||
irModule = module
|
||||
|
||||
|
||||
Reference in New Issue
Block a user