TypeSystemContext: Rework raw types processing

All the current usages are about checking if the type is raw,
also in K2 it is simply incorrect to assume that only flexible types
might be raw
This commit is contained in:
Denis.Zharkov
2023-02-21 16:50:29 +01:00
committed by Space Team
parent b6e59fe8fd
commit eb09a25239
7 changed files with 10 additions and 12 deletions
@@ -204,7 +204,7 @@ abstract class AbstractSignatureParts<TAnnotation : Any> {
private fun KotlinTypeMarker.toIndexed(): List<TypeAndDefaultQualifiers> = with(typeSystem) {
TypeAndDefaultQualifiers(this@toIndexed, extractAndMergeDefaultQualifiers(containerDefaultTypeQualifiers), null).flattenTree {
// Enhancement of raw type arguments may enter a loop in FE1.0.
if (skipRawTypeArguments && it.type?.asFlexibleType()?.asRawType() != null) return@flattenTree null
if (skipRawTypeArguments && it.type?.isRawType() == true) return@flattenTree null
it.type?.typeConstructor()?.getParameters()?.zip(it.type.getArguments()) { parameter, arg ->
if (arg.isStarProjection()) {