[FIR] Narrow down range of NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER

This uses the same approach as
INFERRED_TYPE_VARIABLE_INTO_EMPTY_INTERSECTION where we use a visitor
to find a call to a symbol that contains the type variable in question.

#KT-56140 Fixed
This commit is contained in:
Kirill Rakhman
2023-09-22 11:25:51 +02:00
committed by Space Team
parent 4690a430f4
commit fbf68a5bcc
44 changed files with 105 additions and 223 deletions
@@ -1,16 +0,0 @@
// !CHECK_TYPE
package a
import checkSubtype
fun <T> emptyList(): List<T> = throw Exception()
fun <T> foo(f: T.() -> Unit, l: List<T>): T = throw Exception("$f$l")
fun test() {
val q = foo(fun Int.() {}, emptyList()) //type inference no information for parameter error
checkSubtype<Int>(q)
<!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>foo<!>({}, emptyList())
}