[NI] Resolve lambda against input types from expected type

This is needed to report more precise diagnostics and fix IDE-tests

 #KT-31059 Fixed
This commit is contained in:
Mikhail Zarechenskiy
2019-04-18 15:22:43 +03:00
parent 8f8e33f251
commit 2fe900d915
12 changed files with 66 additions and 25 deletions
@@ -19,9 +19,9 @@ fun test1(a: (Int) -> Unit) {
}
fun test2(a: (Int) -> Unit) {
test2(<!TYPE_MISMATCH!>fun (<!OI;EXPECTED_PARAMETER_TYPE_MISMATCH!>x: String<!>) {}<!>)
test2(<!TYPE_MISMATCH!>fun (<!EXPECTED_PARAMETER_TYPE_MISMATCH!>x: String<!>) {}<!>)
}
fun test3(a: (Int, String) -> Unit) {
test3(<!TYPE_MISMATCH!>fun <!OI;EXPECTED_PARAMETERS_NUMBER_MISMATCH!>(<!OI;EXPECTED_PARAMETER_TYPE_MISMATCH!>x: String<!>)<!> {}<!>)
test3(<!TYPE_MISMATCH!>fun <!EXPECTED_PARAMETERS_NUMBER_MISMATCH!>(<!EXPECTED_PARAMETER_TYPE_MISMATCH!>x: String<!>)<!> {}<!>)
}