From 08a5ba094f3d195911fe7360ae058bb692d55ab2 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Tue, 14 Apr 2015 15:20:17 +0200 Subject: [PATCH] pull up: skip conflict if super method is available in target module --- .../intellij/refactoring/util/RefactoringConflictsUtil.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/java/java-impl/src/com/intellij/refactoring/util/RefactoringConflictsUtil.java b/java/java-impl/src/com/intellij/refactoring/util/RefactoringConflictsUtil.java index 19a6be869c43..9fc61e413029 100644 --- a/java/java-impl/src/com/intellij/refactoring/util/RefactoringConflictsUtil.java +++ b/java/java-impl/src/com/intellij/refactoring/util/RefactoringConflictsUtil.java @@ -260,6 +260,11 @@ public class RefactoringConflictsUtil { !CommonRefactoringUtil.isAncestor(resolved, scopes) && !PsiSearchScopeUtil.isInScope(resolveScope, resolved) && !(resolved instanceof LightElement)) { + if (resolved instanceof PsiMethod) { + for (PsiMethod superMethod : ((PsiMethod)resolved).findDeepestSuperMethods()) { + if (PsiSearchScopeUtil.isInScope (resolveScope, superMethod)) return; + } + } final String scopeDescription = RefactoringUIUtil.getDescription(ConflictsUtil.getContainer(reference), true); final String message = RefactoringBundle.message("0.referenced.in.1.will.not.be.accessible.in.module.2", RefactoringUIUtil.getDescription(resolved, true),