diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/FirDiagnosticsDirectives.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/FirDiagnosticsDirectives.kt index 05a4249f885..573669b1c09 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/FirDiagnosticsDirectives.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/directives/FirDiagnosticsDirectives.kt @@ -17,6 +17,11 @@ object FirDiagnosticsDirectives : SimpleDirectivesContainer() { applicability = Global ) + val RENDERER_CFG_LEVELS by directive( + description = "Render leves of nodes in CFG dump", + applicability = Global + ) + val FIR_DUMP by directive( description = """ Dumps resulting fir to `testName.fir` file diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirCfgDumpHandler.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirCfgDumpHandler.kt index 164d4a1880b..ed1389beb31 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirCfgDumpHandler.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirCfgDumpHandler.kt @@ -7,6 +7,7 @@ package org.jetbrains.kotlin.test.frontend.fir.handlers import org.jetbrains.kotlin.fir.resolve.dfa.cfg.FirControlFlowGraphRenderVisitor import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives +import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives.RENDERER_CFG_LEVELS import org.jetbrains.kotlin.test.directives.model.DirectivesContainer import org.jetbrains.kotlin.test.frontend.fir.FirOutputArtifact import org.jetbrains.kotlin.test.model.TestModule @@ -24,7 +25,8 @@ class FirCfgDumpHandler(testServices: TestServices) : FirAnalysisHandler(testSer override fun processModule(module: TestModule, info: FirOutputArtifact) { if (alreadyDumped || FirDiagnosticsDirectives.DUMP_CFG !in module.directives) return val file = info.firFiles.values.first() - file.accept(FirControlFlowGraphRenderVisitor(builder)) + val renderLevels = RENDERER_CFG_LEVELS in module.directives + file.accept(FirControlFlowGraphRenderVisitor(builder, renderLevels)) alreadyDumped = true }