From 31908c568cc64453ab1bc14c28daacac535970ef Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Sat, 5 Sep 2020 16:09:34 +0500 Subject: [PATCH] [IR] Used new fake override builder for lowerings (cherry picked from commit a6f63f61c4c0db689a678d5f4d808cef109894e5) --- .../kotlin/backend/konan/EnumSpecialDescriptorsFactory.kt | 4 ++-- .../src/org/jetbrains/kotlin/backend/konan/cgen/CBridgeGen.kt | 4 ++-- .../kotlin/backend/konan/lower/FunctionReferenceLowering.kt | 3 ++- .../org/jetbrains/kotlin/backend/konan/lower/TestProcessor.kt | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/EnumSpecialDescriptorsFactory.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/EnumSpecialDescriptorsFactory.kt index 44d1d9c4bf4..0ea866f3fa1 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/EnumSpecialDescriptorsFactory.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/EnumSpecialDescriptorsFactory.kt @@ -5,7 +5,7 @@ package org.jetbrains.kotlin.backend.konan -import org.jetbrains.kotlin.backend.common.ir.addFakeOverridesViaIncorrectHeuristic +import org.jetbrains.kotlin.backend.common.ir.addFakeOverrides import org.jetbrains.kotlin.backend.common.ir.addSimpleDelegatingConstructor import org.jetbrains.kotlin.backend.common.ir.createParameterDeclarations import org.jetbrains.kotlin.backend.common.lower.createIrBuilder @@ -224,7 +224,7 @@ internal class EnumSpecialDeclarationsFactory(val context: Context) { ) implObject.superTypes += context.irBuiltIns.anyType - implObject.addFakeOverridesViaIncorrectHeuristic() + implObject.addFakeOverrides(context.irBuiltIns) val itemGetterSymbol = findItemGetterSymbol() val enumEntriesMap = enumEntriesMap(enumClass) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/cgen/CBridgeGen.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/cgen/CBridgeGen.kt index 2d30f8ee317..babf77e1ad4 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/cgen/CBridgeGen.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/cgen/CBridgeGen.kt @@ -1,6 +1,6 @@ package org.jetbrains.kotlin.backend.konan.cgen -import org.jetbrains.kotlin.backend.common.ir.addFakeOverridesViaIncorrectHeuristic +import org.jetbrains.kotlin.backend.common.ir.addFakeOverrides import org.jetbrains.kotlin.backend.common.ir.createDispatchReceiverParameter import org.jetbrains.kotlin.backend.common.ir.createParameterDeclarations import org.jetbrains.kotlin.backend.common.ir.simpleFunctions @@ -1330,7 +1330,7 @@ private class ObjCBlockPointerValuePassing( +irReturn(callBlock(blockPointer, arguments)) } - irClass.addFakeOverridesViaIncorrectHeuristic() + irClass.addFakeOverrides(stubs.irBuiltIns) stubs.addKotlin(irClass) return constructor diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt index 3dd3d185383..0b1f5253f8a 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/FunctionReferenceLowering.kt @@ -331,7 +331,8 @@ internal class FunctionReferenceLowering(val context: Context): FileLoweringPass } functionReferenceClass.superTypes += superTypes - functionReferenceClass.addFakeOverridesViaIncorrectHeuristic() + + functionReferenceClass.addFakeOverrides(context.irBuiltIns) return BuiltFunctionReference(functionReferenceClass, constructor) } diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/TestProcessor.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/TestProcessor.kt index 50e997cb531..baa2034e8c2 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/TestProcessor.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/lower/TestProcessor.kt @@ -529,7 +529,7 @@ internal class TestProcessor (val context: Context) { companionGetter?.let { declarations += it } superTypes += symbols.baseClassSuite.typeWith(listOf(testClassType, testCompanionType)) - addFakeOverridesViaIncorrectHeuristic() + addFakeOverrides(context.irBuiltIns) } } //endregion