FILE: inferenceFromCallableReferenceType.kt
    public final fun <T, E> foo(x: R|(T) -> E|): R|kotlin/Unit| {
    }
    public final fun <T, E> foo2(x: R|(A, T) -> E|): R|kotlin/Unit| {
    }
    public final class A : R|kotlin/Any| {
        public constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final fun baz(x: R|kotlin/String|): R|kotlin/Int| {
            ^baz Null(null)!!
        }

    }
    public final fun bar(x: R|kotlin/String|): R|kotlin/Int| {
        ^bar Null(null)!!
    }
    public final fun main(): R|kotlin/Unit| {
        R|/foo|<R|@R|kotlin/ParameterName|(name = String(x))  kotlin/String|, R|kotlin/Int|>(::R|/bar|)
        R|/foo|<R|@R|kotlin/ParameterName|(name = String(x))  kotlin/String|, R|kotlin/Int|>(R|/A.A|()::R|/A.baz|)
        R|/foo2|<R|@R|kotlin/ParameterName|(name = String(x))  kotlin/String|, R|kotlin/Int|>(Q|A|::R|/A.baz|)
    }
