class A(x: Double) { constructor(x: Int) { } constructor(x: String) { } } val v = A(1.0) Resolved call: Resulting descriptor: constructor A(x: Double) defined in A Explicit receiver kind = NO_EXPLICIT_RECEIVER Dispatch receiver = NO_RECEIVER Extension receiver = NO_RECEIVER Value arguments mapping: SUCCESS x : Double = 1.0