[IR][lowering] adopt 6adad1055b

JVM IR: generate delegates to DefaultImpls for fun interfaces
This commit is contained in:
Vasily Levchenko
2020-06-15 10:05:27 +02:00
parent 5fc1ec57f5
commit 0628dfbc7c
4 changed files with 8 additions and 10 deletions
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.backend.konan
import org.jetbrains.kotlin.backend.common.ir.addFakeOverrides
import org.jetbrains.kotlin.backend.common.ir.addFakeOverridesViaIncorrectHeuristic
import org.jetbrains.kotlin.backend.common.ir.addSimpleDelegatingConstructor
import org.jetbrains.kotlin.backend.common.ir.createParameterDeclarations
import org.jetbrains.kotlin.backend.konan.descriptors.synthesizedName
@@ -115,7 +115,7 @@ internal class EnumSpecialDeclarationsFactory(val context: Context) {
)
implObject.superTypes += context.irBuiltIns.anyType
implObject.addFakeOverrides()
implObject.addFakeOverridesViaIncorrectHeuristic()
val itemGetterSymbol = symbols.array.functions.single { it.descriptor.name == Name.identifier("get") }
val enumEntriesMap = enumClass.declarations
@@ -1,6 +1,6 @@
package org.jetbrains.kotlin.backend.konan.cgen
import org.jetbrains.kotlin.backend.common.ir.addFakeOverrides
import org.jetbrains.kotlin.backend.common.ir.addFakeOverridesViaIncorrectHeuristic
import org.jetbrains.kotlin.backend.common.ir.createDispatchReceiverParameter
import org.jetbrains.kotlin.backend.common.ir.createParameterDeclarations
import org.jetbrains.kotlin.backend.common.ir.simpleFunctions
@@ -1318,7 +1318,7 @@ private class ObjCBlockPointerValuePassing(
+irReturn(callBlock(blockPointer, arguments))
}
irClass.addFakeOverrides()
irClass.addFakeOverridesViaIncorrectHeuristic()
stubs.addKotlin(irClass)
return constructor
@@ -246,7 +246,7 @@ internal class CallableReferenceLowering(val context: Context): FileLoweringPass
}
functionReferenceClass.superTypes += superTypes
functionReferenceClass.addFakeOverrides()
functionReferenceClass.addFakeOverridesViaIncorrectHeuristic()
return BuiltFunctionReference(functionReferenceClass, constructor)
}
@@ -5,10 +5,7 @@
package org.jetbrains.kotlin.backend.konan.lower
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
import org.jetbrains.kotlin.backend.common.ir.*
import org.jetbrains.kotlin.backend.common.lower.createIrBuilder
import org.jetbrains.kotlin.backend.common.reportWarning
import org.jetbrains.kotlin.backend.konan.Context
@@ -35,6 +32,7 @@ import org.jetbrains.kotlin.ir.symbols.impl.IrConstructorSymbolImpl
import org.jetbrains.kotlin.ir.symbols.impl.IrSimpleFunctionSymbolImpl
import org.jetbrains.kotlin.ir.types.*
import org.jetbrains.kotlin.ir.util.*
import org.jetbrains.kotlin.ir.util.addChild
import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid
import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid
import org.jetbrains.kotlin.load.kotlin.PackagePartClassUtils
@@ -529,7 +527,7 @@ internal class TestProcessor (val context: Context) {
companionGetter?.let { declarations += it }
superTypes += symbols.baseClassSuite.typeWith(listOf(testClassType, testCompanionType))
addFakeOverrides()
addFakeOverridesViaIncorrectHeuristic()
}
}
//endregion