diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/operators/OperatorReferenceSearcher.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/operators/OperatorReferenceSearcher.kt index 0c2e6b138e4..cc62c7a29e3 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/operators/OperatorReferenceSearcher.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/operators/OperatorReferenceSearcher.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.idea.search.usagesSearch.operators +import com.intellij.lang.java.JavaLanguage import com.intellij.openapi.progress.ProgressIndicatorProvider import com.intellij.openapi.progress.util.ProgressWrapper import com.intellij.psi.* @@ -19,6 +20,7 @@ import org.jetbrains.kotlin.idea.KotlinFileType import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny import org.jetbrains.kotlin.idea.caches.resolve.util.getJavaOrKotlinMemberDescriptor +import org.jetbrains.kotlin.idea.caches.resolve.util.hasJavaResolutionFacade import org.jetbrains.kotlin.idea.codeInsight.DescriptorToSourceUtilsIde import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchOptions import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinRequestResultProcessor @@ -201,9 +203,10 @@ abstract class OperatorReferenceSearcher( } protected open fun resolveTargetToDescriptor(): FunctionDescriptor? { - return when (targetDeclaration) { - is KtDeclaration -> targetDeclaration.resolveToDescriptorIfAny(BodyResolveMode.FULL) - is PsiMember -> targetDeclaration.getJavaOrKotlinMemberDescriptor() + return when { + targetDeclaration is KtDeclaration -> targetDeclaration.resolveToDescriptorIfAny(BodyResolveMode.FULL) + targetDeclaration is PsiMember && targetDeclaration.hasJavaResolutionFacade() -> + targetDeclaration.getJavaOrKotlinMemberDescriptor() else -> null } as? FunctionDescriptor } diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/moveConflictUtils.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/moveConflictUtils.kt index e624356b4ca..2e5940e5c23 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/moveConflictUtils.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/move/moveDeclarations/moveConflictUtils.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.idea.refactoring.move.moveDeclarations +import com.intellij.lang.java.JavaLanguage import com.intellij.openapi.module.Module import com.intellij.openapi.module.ModuleUtilCore import com.intellij.openapi.module.impl.scopes.JdkScope @@ -35,6 +36,7 @@ import org.jetbrains.kotlin.idea.caches.project.getModuleInfoByVirtualFile import org.jetbrains.kotlin.idea.caches.project.implementedModules import org.jetbrains.kotlin.idea.caches.resolve.* import org.jetbrains.kotlin.idea.caches.resolve.util.getJavaMemberDescriptor +import org.jetbrains.kotlin.idea.caches.resolve.util.hasJavaResolutionFacade import org.jetbrains.kotlin.idea.codeInsight.DescriptorToSourceUtilsIde import org.jetbrains.kotlin.idea.core.isInTestSourceContentKotlinAware import org.jetbrains.kotlin.idea.imports.importableFqName @@ -459,9 +461,9 @@ class MoveConflictChecker( val target = ref.resolve() ?: return@forEach if (isToBeMoved(target)) return@forEach - val targetDescriptor = when (target) { - is KtDeclaration -> target.unsafeResolveToDescriptor() - is PsiMember -> target.getJavaMemberDescriptor() + val targetDescriptor = when { + target is KtDeclaration -> target.unsafeResolveToDescriptor() + target is PsiMember && target.hasJavaResolutionFacade() -> target.getJavaMemberDescriptor() else -> null } as? DeclarationDescriptorWithVisibility ?: return@forEach