FIR: support CONDITION_TYPE_MISMATCH diagnostic

We report CONDITION_TYPE_MISMATCH on
- loop conditions
- when branch conditions
- binary logic arguments
This commit is contained in:
Mikhail Glukhikh
2021-05-18 13:26:27 +03:00
parent e85d97b894
commit 3663884db2
27 changed files with 165 additions and 50 deletions
@@ -7,10 +7,10 @@ fun foo() =
when {
cond1() -> 12
cond2() -> 2
4 -> 34
Pair(1, 2) -> 3
<!CONDITION_TYPE_MISMATCH!>4<!> -> 34
<!CONDITION_TYPE_MISMATCH!>Pair(1, 2)<!> -> 3
in 1..10 -> 34
4 -> 38
<!CONDITION_TYPE_MISMATCH!>4<!> -> 38
is Int -> 33
else -> 34
}