class A { class object { fun invoke(i: Int) = i } } fun test() = A(1) Resolved call: Resulting descriptor: fun invoke(i: Int): Int defined in A. Explicit receiver kind = DISPATCH_RECEIVER Dispatch receiver = A {} Extension receiver = NO_RECEIVER Value arguments mapping: SUCCESS i : Int = 1