Support suspend conversion in callable reference adaptation

#KT-15917 In Progress
This commit is contained in:
Mikhail Zarechenskiy
2020-04-22 04:51:07 +03:00
parent 537a59d6ca
commit ac642cf175
13 changed files with 221 additions and 3 deletions
@@ -0,0 +1,18 @@
// !LANGUAGE: +SuspendConversion
// !DIAGNOSTICS: -UNUSED_PARAMETER
fun foo1(f: suspend () -> Unit) {}
fun bar1() {}
fun <T> foo2(e: T, f: suspend (T) -> Unit) {}
fun bar2(x: Int) {}
fun bar2(s: String) {}
fun test() {
foo1(::bar1)
foo2(42, ::bar2)
foo2("str", ::bar2)
foo2(42, <!TYPE_MISMATCH!>::bar1<!>)
}