mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Don't report local variables named 'ignored' as unused (IDEA-171371)
GitOrigin-RevId: 40ad31afd1cb58fcdd9c48ba9970508ec052b562
This commit is contained in:
committed by
intellij-monorepo-bot
parent
6498cab354
commit
e29649134e
+1
-1
@@ -261,7 +261,7 @@ class PostHighlightingVisitor {
|
||||
@Nullable
|
||||
private HighlightInfo processLocalVariable(@NotNull PsiLocalVariable variable,
|
||||
@NotNull PsiIdentifier identifier) {
|
||||
if (variable instanceof PsiResourceVariable && PsiUtil.isIgnoredName(variable.getName())) return null;
|
||||
if (PsiUtil.isIgnoredName(variable.getName())) return null;
|
||||
if (UnusedSymbolUtil.isImplicitUsage(myProject, variable)) return null;
|
||||
|
||||
String message = null;
|
||||
|
||||
+2
@@ -16,6 +16,7 @@ import com.intellij.openapi.progress.ProcessCanceledException;
|
||||
import com.intellij.openapi.project.IndexNotReadyException;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.controlFlow.DefUseUtil;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import com.intellij.ui.ScrollPaneFactory;
|
||||
import com.intellij.ui.TitledSeparator;
|
||||
import com.intellij.ui.components.JBLabel;
|
||||
@@ -294,6 +295,7 @@ public final class UnusedDeclarationInspection extends UnusedDeclarationInspecti
|
||||
for (DefUseUtil.Info varDefInfo : unusedDefs) {
|
||||
PsiElement parent = varDefInfo.getContext();
|
||||
PsiVariable variable = varDefInfo.getVariable();
|
||||
if (PsiUtil.isIgnoredName(variable.getName())) continue;
|
||||
if (parent instanceof PsiDeclarationStatement || parent instanceof PsiForeachStatement ||
|
||||
variable instanceof PsiResourceVariable || variable instanceof PsiPatternVariable) {
|
||||
if (!varDefInfo.isRead() && !SuppressionUtil.inspectionResultSuppressed(variable, UnusedDeclarationInspection.this)) {
|
||||
|
||||
@@ -49,7 +49,7 @@ public final class PsiUtil extends PsiUtilCore {
|
||||
public static final int ACCESS_LEVEL_PRIVATE = 1;
|
||||
public static final Key<Boolean> VALID_VOID_TYPE_IN_CODE_FRAGMENT = Key.create("VALID_VOID_TYPE_IN_CODE_FRAGMENT");
|
||||
|
||||
private static final Pattern IGNORED_NAMES = Pattern.compile("ignored?[A-Z]?[a-z]*\\d*");
|
||||
private static final Pattern IGNORED_NAMES = Pattern.compile("ignored?[A-Za-z\\d]*");
|
||||
|
||||
private PsiUtil() {}
|
||||
|
||||
|
||||
@@ -51,6 +51,11 @@ class PrivateClassTest {
|
||||
}
|
||||
}
|
||||
|
||||
void localVariables() {
|
||||
String <warning descr="Variable 's' is never used">s</warning> = "unused";
|
||||
String ignored = "unused but ignored";
|
||||
}
|
||||
|
||||
|
||||
class IncrementedButNeverAccessed {
|
||||
private int <warning descr="Private field 'ffff' is assigned but never accessed">ffff</warning>;
|
||||
|
||||
@@ -16,5 +16,6 @@ class PatternVariables {
|
||||
|
||||
}
|
||||
var strings = getStrings(); // strings unused
|
||||
final boolean ignored = new java.io.File(args[1]).delete(); // don't warn on variables named 'ignored'
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user