FIR2IR: IrSimpleFunction.isFakeOverride

This commit is contained in:
Dmitry Petrov
2019-10-22 16:23:32 +03:00
parent d23f13e3dc
commit 46745adfd9
@@ -370,7 +370,8 @@ class Fir2IrDeclarationStorage(
isExternal = function.isExternal, isExternal = function.isExternal,
isTailrec = function.isTailRec, isTailrec = function.isTailRec,
isSuspend = function.isSuspend, isSuspend = function.isSuspend,
isExpect = function.isExpect isExpect = function.isExpect,
isFakeOverride = origin == IrDeclarationOrigin.FAKE_OVERRIDE
) )
} }
leaveScope(descriptor) leaveScope(descriptor)
@@ -410,7 +411,8 @@ class Fir2IrDeclarationStorage(
isInline = false, isExternal = false, isTailrec = false, isInline = false, isExternal = false, isTailrec = false,
// TODO: suspend lambda // TODO: suspend lambda
isSuspend = false, isSuspend = false,
isExpect = false isExpect = false,
isFakeOverride = false
) )
}.bindAndDeclareParameters( }.bindAndDeclareParameters(
function, descriptor, irParent = null, isStatic = false, shouldLeaveScope = false function, descriptor, irParent = null, isStatic = false, shouldLeaveScope = false
@@ -468,7 +470,8 @@ class Fir2IrDeclarationStorage(
Name.special("<$prefix-${correspondingProperty.name}>"), Name.special("<$prefix-${correspondingProperty.name}>"),
propertyAccessor?.visibility ?: correspondingProperty.visibility, propertyAccessor?.visibility ?: correspondingProperty.visibility,
correspondingProperty.modality, accessorReturnType, correspondingProperty.modality, accessorReturnType,
isInline = false, isExternal = false, isTailrec = false, isSuspend = false, isExpect = false isInline = false, isExternal = false, isTailrec = false, isSuspend = false, isExpect = false,
isFakeOverride = origin == IrDeclarationOrigin.FAKE_OVERRIDE
).apply { ).apply {
if (propertyAccessor == null && isSetter) { if (propertyAccessor == null && isSetter) {
declareDefaultSetterParameter(propertyType) declareDefaultSetterParameter(propertyType)