diff --git a/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java b/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java index d7028b99fcff..b09b988ec4d7 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/codeStyle/JavaCodeStyleManagerImpl.java @@ -905,7 +905,7 @@ public class JavaCodeStyleManagerImpl extends JavaCodeStyleManager { continue NextName; } run = run.getNextSibling(); - if (scope instanceof PsiMethod) {//do not check next member for param name conflict + if (scope instanceof PsiMethod || scope instanceof PsiForeachStatement) {//do not check next member for param name conflict break; } } diff --git a/java/java-tests/testSrc/com/intellij/refactoring/RenameSuggestionsTest.groovy b/java/java-tests/testSrc/com/intellij/refactoring/RenameSuggestionsTest.groovy index 244dbb5d69dd..e2ab79cad312 100644 --- a/java/java-tests/testSrc/com/intellij/refactoring/RenameSuggestionsTest.groovy +++ b/java/java-tests/testSrc/com/intellij/refactoring/RenameSuggestionsTest.groovy @@ -43,6 +43,19 @@ class RenameSuggestionsTest extends LightCodeInsightTestCase { doTestSuggestionAvailable(text, "foo") } + public void "test foreach scope"() { + def text = """\ + class Foo { + { + for (Foo f : new Foo[] {}); + for (Foo foo : new Foo[] {}); + } + } + """ + + doTestSuggestionAvailable(text, "foo") + } + public void "test by super parameter name"() { def text = """\ class Test {