diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiDeclarationStatementImpl.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiDeclarationStatementImpl.java index 7f2ac600b570..a36ef9193fe1 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiDeclarationStatementImpl.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/source/tree/java/PsiDeclarationStatementImpl.java @@ -77,6 +77,17 @@ public class PsiDeclarationStatementImpl extends CompositePsiElement implements } super.deleteChildInternal(child); + + TreeElement first = getFirstChildNode(); + if (first != null && !DECLARED_ELEMENT_BIT_SET.contains(first.getElementType())) { + TreeElement last = first; + while (true) { + TreeElement next = last.getTreeNext(); + if (next == null || DECLARED_ELEMENT_BIT_SET.contains(next.getElementType())) break; + last = next; + } + getTreeParent().addInternal(first, last, this, Boolean.TRUE); + } } private void removeCommaBefore(ASTNode child) { diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedVariable/after12.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedVariable/after12.java index 0351b002a9c7..55c50ed0a6e6 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedVariable/after12.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedVariable/after12.java @@ -5,7 +5,8 @@ class a { int k; private int run() { - /*ddddd*/ Object oo = (Object) new Integer(0); + /*ddddd*/ + Object oo = (Object) new Integer(0); return 0; } } \ No newline at end of file