// !CHECK_TYPE import kotlin.reflect.KFunction0 fun explicitlyExpectFunction0(f: () -> Unit) = f fun explicitlyExpectFunction1(f: (A) -> Unit) = f fun foo() {} class A { fun foo() {} fun main() { val x = ::foo checkSubtype>(x) explicitlyExpectFunction0(x) explicitlyExpectFunction1(x) explicitlyExpectFunction0(::foo) explicitlyExpectFunction1(::foo) } }