[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
@@ -12,7 +12,7 @@ fun <T> emptyList() : List<T>? = ArrayList<T>()
fun foo() {
// type arguments shouldn't be required
val l : List<Int> = emptyList()!!
val l1 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER, NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>emptyList()!!<!>
val l1 = <!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!><!NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER!>emptyList<!>()!!<!>
checkSubtype<List<Int>>(emptyList()!!)
checkSubtype<List<Int>?>(emptyList())