IR: 'fun interface' support

This commit is contained in:
Dmitry Petrov
2020-01-20 13:36:53 +03:00
parent a55989a2a5
commit 64a405e7a0
40 changed files with 977 additions and 30 deletions
@@ -294,7 +294,8 @@ abstract class AbstractSuspendFunctionsLowering<C : CommonBackendContext>(val co
isData = false,
isExternal = false,
isInline = false,
isExpect = false
isExpect = false,
isFun = false
).apply {
d.bind(this)
parent = irFunction.parent
@@ -5,10 +5,9 @@
package org.jetbrains.kotlin.ir.builders.declarations
import org.jetbrains.kotlin.backend.common.descriptors.*
import org.jetbrains.kotlin.backend.common.descriptors.synthesizedName
import org.jetbrains.kotlin.backend.common.ir.copyTo
import org.jetbrains.kotlin.descriptors.*
import org.jetbrains.kotlin.descriptors.annotations.Annotations
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.declarations.impl.*
import org.jetbrains.kotlin.ir.descriptors.*
@@ -27,7 +26,7 @@ fun IrClassBuilder.buildClass(): IrClass {
IrClassSymbolImpl(wrappedDescriptor),
name, kind, visibility, modality,
isCompanion = isCompanion, isInner = isInner, isData = isData, isExternal = isExternal,
isInline = isInline, isExpect = isExpect
isInline = isInline, isExpect = isExpect, isFun = isFun
).also {
wrappedDescriptor.bind(it)
}