From 84967295976d174a03c038ff3865c8bcd8e7be15 Mon Sep 17 00:00:00 2001 From: Nikolay Lunyak Date: Tue, 28 Sep 2021 15:27:11 +0300 Subject: [PATCH] [FIR] Remove the type parameters scope duplicate --- .../fir/resolve/transformers/FirSupertypesResolution.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirSupertypesResolution.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirSupertypesResolution.kt index 47fcbd3244b..7f47e399d44 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirSupertypesResolution.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/transformers/FirSupertypesResolution.kt @@ -163,7 +163,7 @@ private fun FirClassLikeDeclaration.typeParametersScope(): FirScope? { return FirMemberTypeParameterScope(this) } -private fun createScopesForNestedClasses( +private fun createOtherScopesForNestedClasses( klass: FirClass, session: FirSession, scopeSession: ScopeSession, @@ -185,7 +185,9 @@ private fun createScopesForNestedClasses( it.lookupTag.getNestedClassifierScope(session, scopeSession) ?.wrapNestedClassifierScopeWithSubstitutionForSuperType(it, session) } - addIfNotNull(klass.typeParametersScope()) + // The type parameters scope has already been + // added by this time; + // See: prepareScopes() } fun FirRegularClass.resolveSupertypesInTheAir(session: FirSession): List { @@ -225,7 +227,7 @@ open class FirSupertypeResolverVisitor( val scopes = prepareScopes(klass) resolveAllSupertypes(klass, klass.superTypeRefs) - scopes.pushAll(createScopesForNestedClasses(klass, session, scopeSession, supertypeComputationSession)) + scopes.pushAll(createOtherScopesForNestedClasses(klass, session, scopeSession, supertypeComputationSession)) } }