[java-highlighting] IDEA-385217 Pattern matching scoping with || does not match javac

GitOrigin-RevId: 38acb417580fb33999bb607ca16b24b4fd04b04e
This commit is contained in:
Mikhail Pyltsin
2026-01-29 13:25:57 +00:00
committed by intellij-monorepo-bot
parent c964a598eb
commit 15f3ba5858
3 changed files with 43 additions and 1 deletions
@@ -45,7 +45,12 @@ public final class JavaPsiVariableUtil {
};
PsiElement lastParent = pattern;
for (PsiElement parent = lastParent.getParent(); parent != null; lastParent = parent, parent = parent.getParent()) {
if (parent instanceof PsiInstanceOfExpression || parent instanceof PsiParenthesizedExpression) continue;
if (parent instanceof PsiInstanceOfExpression ||
parent instanceof PsiParenthesizedExpression ||
parent instanceof PsiDeconstructionList ||
parent instanceof PsiDeconstructionPattern) {
continue;
}
if (parent instanceof PsiPrefixExpression && ((PsiPrefixExpression)parent).getOperationTokenType().equals(JavaTokenType.EXCL)) {
hint = hint.invert();
continue;