[Psi2Ir] Fix overridden symbols of Delegated Properties

This commit is contained in:
Roman Artemev
2021-06-07 14:52:27 +03:00
committed by teamcityserver
parent 32bbc3b8ad
commit cb130181a2
@@ -292,11 +292,20 @@ class ClassGenerator(
irProperty.setter = generateDelegatedFunction(irDelegate, delegatedDescriptor.setter!!, delegateToDescriptor.setter!!)
}
irProperty.generateOverrides(delegatedDescriptor)
irProperty.linkCorrespondingPropertySymbol()
return irProperty
}
private fun IrProperty.generateOverrides(propertyDescriptor: PropertyDescriptor) {
overriddenSymbols =
propertyDescriptor.overriddenDescriptors.map { overriddenPropertyDescriptor ->
context.symbolTable.referenceProperty(overriddenPropertyDescriptor.original)
}
}
private fun generateDelegatedFunction(
irClass: IrClass,
irDelegate: IrField,