[FIR] Improve diagnostic reporting & don't use error symbol for candidate if possible

Also introduce few new diagnostics:
- NONE_APPLICABLE more many inapplicable candidates
- HIDDEN for visible candidates
This commit is contained in:
Dmitriy Novozhilov
2020-07-22 16:40:14 +03:00
committed by Mikhail Glukhikh
parent 5c0528b61e
commit f283f2db43
365 changed files with 1400 additions and 1451 deletions
@@ -17,5 +17,5 @@ public class A {
package bar
fun main() {
foo.A.<!INAPPLICABLE_CANDIDATE!>f<!> {}
}
foo.A.<!HIDDEN!>f<!> {}
}
@@ -18,7 +18,7 @@ public class Inv<T> {
fun test(inv: Inv<String>) {
val m: ((String) -> String) -> Inv<String> = inv::map
<!INAPPLICABLE_CANDIDATE!>take<!>(inv::map)
<!INAPPLICABLE_CANDIDATE!>take<!>(<!UNRESOLVED_REFERENCE!>inv::map<!>)
}
fun take(f: ((String) -> String) -> Inv<String>) {}
fun take(f: ((String) -> String) -> Inv<String>) {}