[FIR] Add hasConstantInitializer field in FirField class

This field is required to be able to analyze Java fields
without triggering lazy const evaluation.

#KT-59894
#KT-61920
This commit is contained in:
Ivan Kylchik
2023-11-21 15:07:46 +01:00
committed by Space Team
parent 6ca8f546fe
commit 9f64edb31e
8 changed files with 25 additions and 0 deletions
@@ -49,6 +49,7 @@ abstract class FirField : FirVariable(), FirControlFlowGraphOwner {
abstract override val annotations: List<FirAnnotation>
abstract override val controlFlowGraphReference: FirControlFlowGraphReference?
abstract override val symbol: FirFieldSymbol
abstract val hasConstantInitializer: Boolean
override fun <R, D> accept(visitor: FirVisitor<R, D>, data: D): R =
visitor.visitField(this, data)
@@ -60,6 +60,8 @@ class FirFieldImpl @FirImplementationDetail constructor(
override val setter: FirPropertyAccessor?
get() = null
override var controlFlowGraphReference: FirControlFlowGraphReference? = null
override val hasConstantInitializer: Boolean
get() = status.isConst
init {
symbol.bind(this)