JVM_IR make $deserializeLambda$ method synthetic

This commit is contained in:
Dmitry Petrov
2021-10-21 13:29:21 +03:00
committed by teamcityserver
parent 1dbbe22c8c
commit 6e9cbf52b1
6 changed files with 40 additions and 0 deletions
@@ -264,6 +264,7 @@ private class TypeOperatorLowering(private val context: JvmBackendContext) : Fil
val deserializeLambdaFun = context.irFactory.buildFun {
name = Name.identifier("\$deserializeLambda\$")
visibility = DescriptorVisibilities.PRIVATE
origin = JvmLoweredDeclarationOrigin.DESERIALIZE_LAMBDA_FUN
}
deserializeLambdaFun.parent = irClass
val lambdaParameter = deserializeLambdaFun.addValueParameter("lambda", context.ir.symbols.serializedLambda.irType)
@@ -50,4 +50,5 @@ interface JvmLoweredDeclarationOrigin : IrDeclarationOrigin {
object INLINE_LAMBDA : IrDeclarationOriginImpl("INLINE_LAMBDA")
object PROXY_FUN_FOR_METAFACTORY : IrDeclarationOriginImpl("PROXY_FUN_FOR_METAFACTORY")
object SYNTHETIC_PROXY_FUN_FOR_METAFACTORY : IrDeclarationOriginImpl("SYNTHETIC_PROXY_FUN_FOR_METAFACTORY", isSynthetic = true)
object DESERIALIZE_LAMBDA_FUN : IrDeclarationOriginImpl("DESERIALIZE_LAMBDA_FUN", isSynthetic = true)
}