[FIR] Prohibit confusing syntax inside when branches

^KT-48385
This commit is contained in:
Dmitriy Novozhilov
2021-10-21 14:50:14 +03:00
committed by teamcityserver
parent bf453674b9
commit 94664694df
22 changed files with 280 additions and 262 deletions
@@ -27,10 +27,10 @@ fun case_3(value_1: Boolean, value_2: Boolean, value_3: Long) {
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_1) {
value_2 -> {}
!value_2 -> {}
getBoolean() && value_2 -> {}
getChar() != 'a' -> {}
getList() === getAny() -> {}
value_3 <= 11 -> {}
<!CONFUSING_BRANCH_CONDITION_WARNING!>getBoolean() && value_2<!> -> {}
<!CONFUSING_BRANCH_CONDITION_WARNING!>getChar() != 'a'<!> -> {}
<!CONFUSING_BRANCH_CONDITION_WARNING!>getList() === getAny()<!> -> {}
<!CONFUSING_BRANCH_CONDITION_WARNING!>value_3 <= 11<!> -> {}
}
}
@@ -19,8 +19,8 @@ fun case_2(value_1: Number, value_2: Int) {
// TESTCASE NUMBER: 3
fun case_3(value_1: Boolean, value_2: Boolean, value_3: Long) {
<!NON_EXHAUSTIVE_WHEN_STATEMENT!>when<!> (value_1) {
value_2, !value_2, getBoolean() && value_2, getChar() != 'a' -> {}
getList() === getAny(), value_3 <= 11 -> {}
value_2, !value_2, <!CONFUSING_BRANCH_CONDITION_WARNING!>getBoolean() && value_2<!>, <!CONFUSING_BRANCH_CONDITION_WARNING!>getChar() != 'a'<!> -> {}
<!CONFUSING_BRANCH_CONDITION_WARNING!>getList() === getAny()<!>, <!CONFUSING_BRANCH_CONDITION_WARNING!>value_3 <= 11<!> -> {}
}
}