Fake override construction fallback mode

This commit is contained in:
Alexander Gorshenev
2020-06-17 05:39:35 +03:00
parent de79e3bec3
commit e61960f333
9 changed files with 75 additions and 50 deletions
@@ -6,7 +6,8 @@
package org.jetbrains.kotlin.ir.backend.jvm.serialization
import org.jetbrains.kotlin.backend.common.LoggingContext
import org.jetbrains.kotlin.backend.common.overrides.FakeOverrideBuilderImpl
import org.jetbrains.kotlin.backend.common.overrides.FakeOverrideBuilder
import org.jetbrains.kotlin.backend.common.overrides.FakeOverrideControl
import org.jetbrains.kotlin.backend.common.serialization.*
import org.jetbrains.kotlin.backend.common.serialization.encodings.BinarySymbolData
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureSerializer
@@ -37,10 +38,11 @@ class JvmIrLinker(
symbolTable: SymbolTable,
override val functionalInterfaceFactory: IrAbstractFunctionFactory,
private val stubGenerator: DeclarationStubGenerator,
private val manglerDesc: JvmManglerDesc
) : KotlinIrLinker(currentModule, logger, builtIns, symbolTable, emptyList()) {
private val manglerDesc: JvmManglerDesc,
deserializeFakeOverrides: Boolean = FakeOverrideControl.deserializeFakeOverrides
) : KotlinIrLinker(currentModule, logger, builtIns, symbolTable, emptyList(), deserializeFakeOverrides) {
override val fakeOverrideBuilderImpl = FakeOverrideBuilderImpl(symbolTable, IdSignatureSerializer(JvmManglerIr), builtIns)
override val fakeOverrideBuilder = FakeOverrideBuilder(symbolTable, IdSignatureSerializer(JvmManglerIr), builtIns)
private val javaName = Name.identifier("java")