fun <T> someList(): List<T> = throw Exception()

fun <T> doSmth(l: List<T>) {}
fun doSmth(a: Any) {}

fun bar() {
    <caret>doSmth(someList())
}


Resolved call:

Candidate descriptor: fun <T> doSmth(l: List<T>): Unit defined in root package
Resulting descriptor: fun <T> doSmth(l: List<???>): Unit defined in root package

Explicit receiver kind = NO_EXPLICIT_RECEIVER
Dispatch receiver = NO_RECEIVER
Extension receiver = NO_RECEIVER

Value arguments mapping:

MATCH_MODULO_UNINFERRED_TYPES  l : List<???> = someList()
