From cb20998d939660fd2ecfc16a200f934601263c7e Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Tue, 30 Aug 2022 18:02:59 +0200 Subject: [PATCH] [IR] Allow different origins in Ir[Function|Property]WithLateBinding ^KT-53663 --- .../jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt | 6 ++---- .../jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt | 4 +--- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt index fa34b0841dc..adad5dbb443 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFunctionImpl.kt @@ -116,15 +116,13 @@ class IrFunctionWithLateBindingImpl( isOperator: Boolean, isInfix: Boolean, isExpect: Boolean, - override val factory: IrFactory = IrFactoryImpl, + override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE, + override val factory: IrFactory = IrFactoryImpl ) : IrFunctionCommonImpl( startOffset, endOffset, origin, name, visibility, returnType, isInline, isExternal, isTailrec, isSuspend, isOperator, isInfix, isExpect, containerSource = null, ), IrFunctionWithLateBinding { - override val isFakeOverride: Boolean - get() = true - private var _symbol: IrSimpleFunctionSymbol? = null override val symbol: IrSimpleFunctionSymbol diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt index 1c315bf5ef3..cac7ea15358 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrPropertyImpl.kt @@ -90,14 +90,12 @@ class IrPropertyWithLateBindingImpl( isDelegated: Boolean, isExternal: Boolean, isExpect: Boolean, + override val isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE, override val factory: IrFactory = IrFactoryImpl, ) : IrPropertyCommonImpl( startOffset, endOffset, origin, name, visibility, isVar, isConst, isLateinit, isDelegated, isExternal, isExpect, containerSource = null, ), IrPropertyWithLateBinding { - override val isFakeOverride: Boolean - get() = true - private var _symbol: IrPropertySymbol? = null override val symbol: IrPropertySymbol