From e7ff016f3e4bf1017e3d46ce5220da51cc23d2dc Mon Sep 17 00:00:00 2001 From: Mikhail Pyltsin Date: Thu, 4 Jan 2024 15:43:21 +0100 Subject: [PATCH] [java-inspections] IDEA-341640 Mark main(String[] args) parameter as unused with implicit classes - return back support `premain` GitOrigin-RevId: 71ed562fa9e0f514852cb3aff0e993452371aa44 --- .../src/com/intellij/psi/impl/PsiClassImplUtil.java | 2 +- .../quickFix/removeUnusedParameter/beforePreMain.java | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedParameter/beforePreMain.java diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java b/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java index dc96554e6b9f..078d7210a011 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/PsiClassImplUtil.java @@ -317,7 +317,7 @@ public final class PsiClassImplUtil { return true; } String name = method.getName(); - if ("premain".equals(name) || "agentmain".equals(name)) return false; + if (!("main".equals(name) || "premain".equals(name) || "agentmain".equals(name))) return false; if (!PsiTypes.voidType().equals(method.getReturnType())) return false; PsiElementFactory factory = JavaPsiFacade.getElementFactory(method.getProject()); diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedParameter/beforePreMain.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedParameter/beforePreMain.java new file mode 100644 index 000000000000..2f79e4939c43 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/removeUnusedParameter/beforePreMain.java @@ -0,0 +1,6 @@ +// "Safe delete 'args'" "false" + +public class Main{ + public static void premain(String args, java.lang.instrument.Instrumentation i) { + } +}