diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/CanBeValInspection.kt b/idea/src/org/jetbrains/kotlin/idea/inspections/CanBeValInspection.kt index 535fd846733..696cf73ed0a 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/CanBeValInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/CanBeValInspection.kt @@ -98,7 +98,7 @@ class CanBeValInspection : AbstractKotlinInspection() { var instruction = from while (instruction is InstructionWithNext) { val next = instruction.next ?: return false - if (next in visited) continue + if (next in visited) return false if (next in targets) return true visited.add(next) instruction = next diff --git a/idea/testData/inspections/canBeVal/inspectionData/expected.xml b/idea/testData/inspections/canBeVal/inspectionData/expected.xml index 5ec5cf9612d..1d57b430a09 100644 --- a/idea/testData/inspections/canBeVal/inspectionData/expected.xml +++ b/idea/testData/inspections/canBeVal/inspectionData/expected.xml @@ -61,4 +61,13 @@ Local 'var' can be declared as 'val' Can be declared as 'val' + + + kt11891.kt + 2 + light_idea_test_case + + Local 'var' can be declared as 'val' + Can be declared as 'val' + diff --git a/idea/testData/inspections/canBeVal/kt11891.kt b/idea/testData/inspections/canBeVal/kt11891.kt new file mode 100644 index 00000000000..6849cdd794e --- /dev/null +++ b/idea/testData/inspections/canBeVal/kt11891.kt @@ -0,0 +1,12 @@ +fun main(args: Array) { + var a: String? + + if (args.size == 1) { + a = args[0] + } + else { + a = args.toString() + } + + if (a != null && a.equals("cde")) return +}