diff --git a/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowInformationProvider.kt b/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowInformationProvider.kt index 1677ba47563..94af80a4eb0 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowInformationProvider.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/cfg/ControlFlowInformationProvider.kt @@ -500,9 +500,7 @@ class ControlFlowInformationProvider private constructor( // is not declared enterInitState?.isDeclared != true && exitInitState?.isDeclared != true && // wasn't initialized before current instruction - enterInitState?.mayBeInitialized() != true && - // became initialized after current instruction - exitInitState?.mayBeInitialized() == true + enterInitState?.mayBeInitialized() != true private fun checkInitializationForCustomSetter(ctxt: VariableInitContext, expression: KtExpression): Boolean { val variableDescriptor = ctxt.variableDescriptor diff --git a/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt897.kt b/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt897.kt index ee10f766706..eb279e36d50 100644 --- a/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt897.kt +++ b/compiler/testData/diagnostics/tests/controlFlowAnalysis/kt897.kt @@ -4,7 +4,7 @@ package kt897 class A() { init { - i = 11 + i = 11 } val i : Int? = null // must be an error