[FIR2IR] Correctly map arguments of type alias constructor call

Previously, we applied type arguments as is when converting type alias
constructor calls to IR.
Now, we map them using the expansion of the type alias.

#KT-59743 Fixed
This commit is contained in:
Kirill Rakhman
2023-07-19 10:48:13 +02:00
committed by Space Team
parent b4335c86c8
commit e35a28d36d
16 changed files with 653 additions and 11 deletions
@@ -36,5 +36,5 @@ FILE fqName:<root> fileName:/specializedTypeAliasConstructorCall.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun test (): <root>.Cell<kotlin.Int> declared in <root>'
CONSTRUCTOR_CALL 'public constructor <init> (value: T of <root>.Cell) declared in <root>.Cell' type=<root>.Cell<kotlin.Int> origin=null
<class: T>: <none>
<class: T>: kotlin.Int
value: CONST Int type=kotlin.Int value=42
@@ -13,5 +13,5 @@ class Cell<T : Any?> {
}
fun test(): Cell<Int> {
return Cell</* null */>(value = 42)
return Cell<Int>(value = 42)
}