diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JavaResolveExtension.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JavaResolveExtension.kt index 19d5fa5acd7..c8eacf6b8d1 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JavaResolveExtension.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/JavaResolveExtension.kt @@ -69,15 +69,15 @@ fun PsiMember.getJavaMemberDescriptor(resolutionFacade: ResolutionFacade? = null fun ResolutionFacade.psiClassToDescriptor( psiClass: PsiClass, declarationTranslator: (KtClassOrObject) -> KtClassOrObject? = { it } -): ClassifierDescriptor? { +): ClassDescriptor? { return if (psiClass is KtLightClass && psiClass !is KtLightClassForDecompiledDeclaration) { - val origin = psiClass.getOrigin () ?: return null + val origin = psiClass.getOrigin() ?: return null val declaration = declarationTranslator(origin) ?: return null resolveToDescriptor(declaration) } else { - this.getFrontendService(psiClass, JavaDescriptorResolver::class.java).resolveClass(JavaClassImpl(psiClass)) - } as? ClassifierDescriptor + psiClass.getJavaClassDescriptor(this) + } as? ClassDescriptor } private fun PsiElement.getJavaDescriptorResolver(resolutionFacade: ResolutionFacade?): JavaDescriptorResolver? {