From 4dafc3b6e6e0cae344798289d5c291d1d86a0bd8 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Mon, 26 Jun 2023 14:42:32 +0300 Subject: [PATCH] [FIR] Assert that CFG for anonymous objects is created only once --- .../body/resolve/FirDeclarationsResolveTransformer.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt index 3f7e2bdec35..cb1364b1f21 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/body/resolve/FirDeclarationsResolveTransformer.kt @@ -600,8 +600,8 @@ open class FirDeclarationsResolveTransformer( if (anonymousObject !in context.targetedLocalClasses) { return anonymousObject.runAllPhasesForLocalClass(transformer, components, data, transformer.firTowerDataContextCollector) } - // TODO: why would there be a graph already? - val buildGraph = !implicitTypeOnly && anonymousObject.controlFlowGraphReference == null + require(anonymousObject.controlFlowGraphReference == null) + val buildGraph = !implicitTypeOnly dataFlowAnalyzer.enterClass(anonymousObject, buildGraph) val result = context.withAnonymousObject(anonymousObject, components) { transformDeclarationContent(anonymousObject, data) as FirAnonymousObject