Eliminated -Xdeserialize-fake-overrides

This commit is contained in:
Alexander Gorshenev
2020-11-05 06:12:24 +03:00
parent b9c6267a63
commit 5de7a10df0
11 changed files with 8 additions and 36 deletions
@@ -67,11 +67,6 @@ object FakeOverrideControl {
// If set to true: all fake overrides go to klib serialized IR.
// If set to false: eligible fake overrides are not serialized.
val serializeFakeOverrides: Boolean = true
// If set to true: fake overrides are deserialized from klib serialized IR.
// If set to false: eligible fake overrides are constructed within IR linker.
// This is the default in the absence of -Xdeserialize-fake-overrides flag.
val deserializeFakeOverrides: Boolean = false
}
class FakeOverrideBuilder(
@@ -114,7 +114,6 @@ abstract class IrFileDeserializer(
val builtIns: IrBuiltIns,
val symbolTable: SymbolTable,
protected var deserializeBodies: Boolean,
private val deserializeFakeOverrides: Boolean,
private val fakeOverrideBuilder: FakeOverrideBuilder,
private val allowErrorNodes: Boolean
) {
@@ -1468,7 +1467,6 @@ abstract class IrFileDeserializer(
// Depending on deserialization strategy we either deserialize public api fake overrides
// or reconstruct them after IR linker completes.
private fun isSkippableFakeOverride(proto: ProtoDeclaration, parent: IrClass): Boolean {
if (deserializeFakeOverrides) return false
if (!platformFakeOverrideClassFilter.needToConstructFakeOverrides(parent)) return false
val symbol = when (proto.declaratorCase!!) {
@@ -52,8 +52,7 @@ abstract class KotlinIrLinker(
val logger: LoggingContext,
val builtIns: IrBuiltIns,
val symbolTable: SymbolTable,
private val exportedDependencies: List<ModuleDescriptor>,
private val deserializeFakeOverrides: Boolean
private val exportedDependencies: List<ModuleDescriptor>
) : IrDeserializer, FileLocalAwareLinker {
// Kotlin-MPP related data. Consider some refactoring
@@ -173,7 +172,6 @@ abstract class KotlinIrLinker(
fileIndex,
!strategy.needBodies,
strategy.inlineBodies,
deserializeFakeOverrides,
moduleDeserializer, allowErrorNodes
).apply {
@@ -236,7 +234,6 @@ abstract class KotlinIrLinker(
private val fileIndex: Int,
onlyHeaders: Boolean,
inlineBodies: Boolean,
deserializeFakeOverrides: Boolean,
private val moduleDeserializer: IrModuleDeserializer,
allowErrorNodes: Boolean
) :
@@ -245,7 +242,6 @@ abstract class KotlinIrLinker(
builtIns,
symbolTable,
!onlyHeaders,
deserializeFakeOverrides,
fakeOverrideBuilder,
allowErrorNodes
)