diff --git a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/cfa/FirControlFlowAnalyzer.kt b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/cfa/FirControlFlowAnalyzer.kt index cea30565043..3e891e96536 100644 --- a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/cfa/FirControlFlowAnalyzer.kt +++ b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/cfa/FirControlFlowAnalyzer.kt @@ -47,9 +47,9 @@ class FirControlFlowAnalyzer(session: FirSession) { } private fun runAssignmentCfaCheckers(graph: ControlFlowGraph, reporter: DiagnosticReporter) { - val properties = AbstractFirPropertyInitializationChecker.LocalPropertyCollector.collect(graph) + val properties = AbstractFirCfaPropertyAssignmentChecker.LocalPropertyCollector.collect(graph) if (properties.isEmpty()) return - val data = AbstractFirPropertyInitializationChecker.DataCollector(properties).getData(graph) + val data = AbstractFirCfaPropertyAssignmentChecker.DataCollector(properties).getData(graph) variableAssignmentCheckers.forEach { it.analyze(graph, reporter, data, properties) } } } diff --git a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/collectors/components/ControlFlowAnalysisDiagnosticComponent.kt b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/collectors/components/ControlFlowAnalysisDiagnosticComponent.kt index 49d8348a8ab..82c624c44d0 100644 --- a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/collectors/components/ControlFlowAnalysisDiagnosticComponent.kt +++ b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/collectors/components/ControlFlowAnalysisDiagnosticComponent.kt @@ -58,7 +58,10 @@ class ControlFlowAnalysisDiagnosticComponent(collector: AbstractDiagnosticCollec } override fun visitPropertyAccessor(propertyAccessor: FirPropertyAccessor, data: CheckerContext) { - visitFunction(propertyAccessor, data) + val graph = propertyAccessor.controlFlowGraphReference?.controlFlowGraph ?: return + runCheck { + controlFlowAnalyzer.analyzePropertyAccessor(propertyAccessor, graph, data, it) + } } override fun visitConstructor(constructor: FirConstructor, data: CheckerContext) { diff --git a/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt2960.fir.kt b/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt2960.fir.kt index e6e2293f0df..24429bf8014 100644 --- a/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt2960.fir.kt +++ b/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt2960.fir.kt @@ -15,7 +15,7 @@ val o = object { p.x = 4 val z : Int - doSmth(z) + doSmth(z) } }