// !LANGUAGE: +SuspendConversion // !DIAGNOSTICS: -UNUSED_PARAMETER fun foo1(f: suspend () -> Unit) {} fun bar1() {} fun foo2(e: T, f: suspend (T) -> Unit) {} fun bar2(x: Int) {} fun bar2(s: String) {} fun box(): String { foo1(::bar1) foo2(42, ::bar2) foo2("str", ::bar2) return "OK" }