[FIR] Fix type reference for 1st arg of GetClassCall
This commit is contained in:
committed by
Mikhail Glukhikh
parent
4a5643856e
commit
3e6b38a921
+13
-6
@@ -477,12 +477,19 @@ class FirExpressionsResolveTransformer(transformer: FirBodyResolveTransformer) :
|
||||
val typeOfExpression = when (val lhs = transformedGetClassCall.argument) {
|
||||
is FirResolvedQualifier -> {
|
||||
val symbol = lhs.symbol
|
||||
symbol?.constructType(
|
||||
Array((symbol.phasedFir as? FirTypeParametersOwner)?.typeParameters?.size ?: 0) {
|
||||
ConeStarProjection
|
||||
},
|
||||
isNullable = false,
|
||||
) ?: lhs.resultType.coneTypeUnsafe()
|
||||
val typeRef =
|
||||
symbol?.constructType(
|
||||
Array((symbol.phasedFir as? FirTypeParametersOwner)?.typeParameters?.size ?: 0) {
|
||||
ConeStarProjection
|
||||
},
|
||||
isNullable = false,
|
||||
)
|
||||
if (typeRef != null) {
|
||||
lhs.replaceTypeRef(buildResolvedTypeRef { type = typeRef })
|
||||
typeRef
|
||||
} else {
|
||||
lhs.resultType.coneTypeUnsafe()
|
||||
}
|
||||
}
|
||||
is FirResolvedReifiedParameterReference -> {
|
||||
val symbol = lhs.symbol
|
||||
|
||||
Reference in New Issue
Block a user