KT-47939 fixes after review

This commit is contained in:
Dmitry Petrov
2021-11-30 10:55:55 +03:00
committed by TeamCityServer
parent 58f1504aaf
commit 50b0dae786
14 changed files with 126 additions and 80 deletions
@@ -172,19 +172,25 @@ class ReflectionReferencesGenerator(statementGenerator: StatementGenerator) : St
isExpect = false, isFakeOverride = false
).also { irAdapterFun ->
context.symbolTable.withScope(irAdapterFun) {
// TODO irAdapterFun.metadata = ...?
irAdapterFun.metadata = null
irAdapterFun.dispatchReceiverParameter = null
irAdapterFun.extensionReceiverParameter = null
val irFnParameter = createAdapterParameter(startOffset, endOffset, functionParameter.name, 0, functionParameter.type)
irAdapterFun.valueParameters = listOf(irFnParameter)
irAdapterFun.body =
context.irFactory.createExpressionBody(
context.irFactory.createBlockBody(
startOffset, endOffset,
IrTypeOperatorCallImpl(
startOffset, endOffset,
irSamType, IrTypeOperator.SAM_CONVERSION, irSamType,
IrGetValueImpl(startOffset, endOffset, irFnParameter.symbol)
listOf(
IrReturnImpl(
startOffset, endOffset, context.irBuiltIns.nothingType,
irAdapterFun.symbol,
IrTypeOperatorCallImpl(
startOffset, endOffset,
irSamType, IrTypeOperator.SAM_CONVERSION, irSamType,
IrGetValueImpl(startOffset, endOffset, irFnParameter.symbol)
)
)
)
)
}
@@ -16,8 +16,6 @@
package org.jetbrains.kotlin.ir.declarations
import org.jetbrains.kotlin.ir.expressions.IrStatementOriginImpl
interface IrDeclarationOrigin {
object DEFINED : IrDeclarationOriginImpl("DEFINED")
object FAKE_OVERRIDE : IrDeclarationOriginImpl("FAKE_OVERRIDE")