diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarySemicolonInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarySemicolonInspection.java index 67f03ce05862..60826bc3a4f5 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarySemicolonInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarySemicolonInspection.java @@ -114,6 +114,12 @@ public class UnnecessarySemicolonInspection extends BaseInspection implements Cl super.visitImportList(list); } + @Override + public void visitModule(PsiJavaModule module) { + findTopLevelSemicolons(module); + super.visitModule(module); + } + private void findTopLevelSemicolons(PsiElement element) { for (PsiElement sibling = element.getFirstChild(); sibling != null; sibling = skipForwardWhiteSpacesAndComments(sibling)) { if (PsiUtil.isJavaToken(sibling, JavaTokenType.SEMICOLON)) { diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessary_semicolon/module-info.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessary_semicolon/module-info.java new file mode 100644 index 000000000000..adf9053489ca --- /dev/null +++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessary_semicolon/module-info.java @@ -0,0 +1,3 @@ +module M { + ; +} \ No newline at end of file diff --git a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarySemicolonInspectionTest.java b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarySemicolonInspectionTest.java index 51dc92994124..44c9bfafbe36 100644 --- a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarySemicolonInspectionTest.java +++ b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarySemicolonInspectionTest.java @@ -16,11 +16,20 @@ package com.siyeh.ig.style; import com.intellij.codeInspection.InspectionProfileEntry; +import com.intellij.testFramework.LightProjectDescriptor; import com.siyeh.ig.LightInspectionTestCase; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public class UnnecessarySemicolonInspectionTest extends LightInspectionTestCase { public void testUnnecessarySemicolon() { doTest(); } + public void testModuleInfo() { doNamedTest("module-info"); } + + @NotNull + @Override + protected LightProjectDescriptor getProjectDescriptor() { + return JAVA_9; + } @Nullable @Override