From 1790dcf80c5362face5c84d194c3f795dc6c7023 Mon Sep 17 00:00:00 2001 From: Denis Zharkov Date: Fri, 13 Dec 2019 17:25:31 +0300 Subject: [PATCH] FIR: Reorder when entries in ConeTypeContext::typeConstructor More expected types should be checked first --- .../src/org/jetbrains/kotlin/fir/types/ConeTypeContext.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/ConeTypeContext.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/ConeTypeContext.kt index accffb84522..13c1c324e04 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/ConeTypeContext.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/types/ConeTypeContext.kt @@ -130,11 +130,11 @@ interface ConeTypeContext : TypeSystemContext, TypeSystemOptimizationContext, Ty override fun SimpleTypeMarker.typeConstructor(): TypeConstructorMarker { return when (this) { - is ConeCapturedType -> constructor - is ConeTypeVariableType -> lookupTag as ConeTypeVariableTypeConstructor // TODO: WTF is ConeClassLikeType -> lookupTag.toSymbol(session) ?: ErrorTypeConstructor("Unresolved: $lookupTag") - is ConeLookupTagBasedType -> lookupTag.toSymbol(session) ?: ErrorTypeConstructor("Unresolved: $lookupTag") + is ConeTypeParameterType -> lookupTag.typeParameterSymbol + is ConeCapturedType -> constructor + is ConeTypeVariableType -> lookupTag as ConeTypeVariableTypeConstructor // TODO: WTF is ConeIntersectionType -> this is ConeStubType -> variable.typeConstructor is ConeDefinitelyNotNullType -> original.typeConstructor()