Use original descriptor on delegating to DefaultImpls
This commit is contained in:
+1
-1
@@ -74,7 +74,7 @@ class InterfaceDelegationLowering(val state: GenerationState) : IrElementTransfo
|
|||||||
|
|
||||||
val interfaceDescriptor = interfaceFun.containingDeclaration as ClassDescriptor
|
val interfaceDescriptor = interfaceFun.containingDeclaration as ClassDescriptor
|
||||||
val defaultImpls = InterfaceLowering.createDefaultImplsClassDescriptor(interfaceDescriptor)
|
val defaultImpls = InterfaceLowering.createDefaultImplsClassDescriptor(interfaceDescriptor)
|
||||||
val defaultImplFun = InterfaceLowering.createDefaultImplFunDescriptor(defaultImpls, interfaceFun, interfaceDescriptor, state.typeMapper)
|
val defaultImplFun = InterfaceLowering.createDefaultImplFunDescriptor(defaultImpls, interfaceFun.original, interfaceDescriptor, state.typeMapper)
|
||||||
val returnType = inheritedFun.returnType!!
|
val returnType = inheritedFun.returnType!!
|
||||||
val irCallImpl = IrCallImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, returnType, defaultImplFun, null, JvmLoweredStatementOrigin.DEFAULT_IMPLS_DELEGATION)
|
val irCallImpl = IrCallImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, returnType, defaultImplFun, null, JvmLoweredStatementOrigin.DEFAULT_IMPLS_DELEGATION)
|
||||||
irBody.statements.add(IrReturnImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, returnType, inheritedFun, irCallImpl))
|
irBody.statements.add(IrReturnImpl(UNDEFINED_OFFSET, UNDEFINED_OFFSET, returnType, inheritedFun, irCallImpl))
|
||||||
|
|||||||
Reference in New Issue
Block a user