diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/analysis/providers/impl/KotlinStaticPsiDeclarationFromBinaryModuleProvider.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/analysis/providers/impl/KotlinStaticPsiDeclarationFromBinaryModuleProvider.kt index ed55ad91ed7..6d24e1e3c20 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/analysis/providers/impl/KotlinStaticPsiDeclarationFromBinaryModuleProvider.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/analysis/providers/impl/KotlinStaticPsiDeclarationFromBinaryModuleProvider.kt @@ -63,7 +63,13 @@ private class KotlinStaticPsiDeclarationFromBinaryModuleProvider( return fakeFile.classes.single() as ClsClassImpl } - override fun getClassesByClassId(classId: ClassId): Collection { + override fun getClassesByClassId(classId: ClassId): Collection { + classId.parentClassId?.let { parentClassId -> + val innerClassName = classId.relativeClassName.asString().split(".").last() + return getClassesByClassId(parentClassId).mapNotNull { parentClsClass -> + parentClsClass.innerClasses.find { it.name == innerClassName } + } + } return clsClassImplsByFqName(classId.asSingleFqName(), isPackageName = false) }