[FIR] Use proper scope lookup for classifiers
This commit is contained in:
committed by
Space Team
parent
4dafc3b6e6
commit
22b2774ef7
+7
-5
@@ -8,7 +8,6 @@ package org.jetbrains.kotlin.fir.resolve.transformers.mpp
|
|||||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||||
import org.jetbrains.kotlin.descriptors.Modality
|
import org.jetbrains.kotlin.descriptors.Modality
|
||||||
import org.jetbrains.kotlin.descriptors.Visibility
|
import org.jetbrains.kotlin.descriptors.Visibility
|
||||||
import org.jetbrains.kotlin.descriptors.isEnumClass
|
|
||||||
import org.jetbrains.kotlin.fir.FirSession
|
import org.jetbrains.kotlin.fir.FirSession
|
||||||
import org.jetbrains.kotlin.fir.declarations.*
|
import org.jetbrains.kotlin.fir.declarations.*
|
||||||
import org.jetbrains.kotlin.fir.isSubstitutionOrIntersectionOverride
|
import org.jetbrains.kotlin.fir.isSubstitutionOrIntersectionOverride
|
||||||
@@ -27,7 +26,6 @@ import org.jetbrains.kotlin.types.AbstractTypeChecker
|
|||||||
import org.jetbrains.kotlin.types.TypeCheckerState
|
import org.jetbrains.kotlin.types.TypeCheckerState
|
||||||
import org.jetbrains.kotlin.types.Variance
|
import org.jetbrains.kotlin.types.Variance
|
||||||
import org.jetbrains.kotlin.types.model.*
|
import org.jetbrains.kotlin.types.model.*
|
||||||
import org.jetbrains.kotlin.utils.addIfNotNull
|
|
||||||
import org.jetbrains.kotlin.utils.addToStdlib.UnsafeCastFunction
|
import org.jetbrains.kotlin.utils.addToStdlib.UnsafeCastFunction
|
||||||
import org.jetbrains.kotlin.utils.addToStdlib.castAll
|
import org.jetbrains.kotlin.utils.addToStdlib.castAll
|
||||||
|
|
||||||
@@ -170,9 +168,13 @@ class FirExpectActualMatchingContext(
|
|||||||
scope.getMembersTo(this, name)
|
scope.getMembersTo(this, name)
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: replace with scope lookup
|
for (name in scope.getClassifierNames()) {
|
||||||
for (name in symbol.declarationSymbols.mapNotNull { (it as? FirRegularClassSymbol)?.classId?.shortClassName }) {
|
scope.processClassifiersByName(name) {
|
||||||
addIfNotNull(scope.getSingleClassifier(name) as? FirRegularClassSymbol)
|
// We should skip nested classes from supertypes here
|
||||||
|
if (it is FirRegularClassSymbol && it.classId.parentClassId == symbol.classId) {
|
||||||
|
add(it)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
getConstructorsTo(this, scope)
|
getConstructorsTo(this, scope)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user