FIR: add UnsafeCall resolution diagnostics

Previously unsafe call is reported as part of InapplicableWrongReceiver.
This makes it difficult for the downstream checkers to report different
diagnostics.
This commit is contained in:
Tianyu Geng
2021-04-08 21:17:01 +03:00
committed by Mikhail Glukhikh
parent 43a2ad0467
commit 6a03f31e50
62 changed files with 283 additions and 283 deletions
@@ -77,7 +77,7 @@ digraph delayedAssignment_kt {
32 [label="Exit when"];
}
33 [label="Access variable R|<local>/a|"];
34 [label="Function call: R|<local>/a|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): /A.foo>#()"];
34 [label="Function call: R|<local>/a|.<Inapplicable(UNSAFE_CALL): /A.foo>#()"];
35 [label="Exit block"];
}
36 [label="Exit function test" style="filled" fillcolor=red];
@@ -20,5 +20,5 @@ FILE: delayedAssignment.kt
}
}
R|<local>/a|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): /A.foo>#()
R|<local>/a|.<Inapplicable(UNSAFE_CALL): /A.foo>#()
}
@@ -103,7 +103,7 @@ digraph smartcastAfterReassignment_kt {
40 [label="Const: Null(null)"];
41 [label="Assignment: R|<local>/x|"];
42 [label="Access variable R|<local>/x|"];
43 [label="Access variable <Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/String.length>#"];
43 [label="Access variable <Inapplicable(UNSAFE_CALL): kotlin/String.length>#"];
44 [label="Exit block"];
}
45 [label="Exit function test_3" style="filled" fillcolor=red];
@@ -19,5 +19,5 @@ FILE: smartcastAfterReassignment.kt
R|<local>/x| = String()
R|<local>/x|.R|kotlin/String.length|
R|<local>/x| = Null(null)
R|<local>/x|.<Inapplicable(INAPPLICABLE_WRONG_RECEIVER): kotlin/String.length>#
R|<local>/x|.<Inapplicable(UNSAFE_CALL): kotlin/String.length>#
}