diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspection.java index bf121ff8c08a..c9605e7f2518 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspection.java @@ -66,7 +66,7 @@ public class ProblematicVarargsMethodOverrideInspection extends BaseInspection { } final PsiParameter parameter = parameters[parameters.length - 1]; final PsiType type = parameter.getType(); - if (!(type instanceof PsiArrayType)) { + if (!(type instanceof PsiArrayType) || type instanceof PsiEllipsisType) { return; } final PsiMethod[] superMethods = method.findDeepestSuperMethods(); diff --git a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspectionTest.java b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspectionTest.java index 46ec84b1c9fb..036feda6492d 100644 --- a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspectionTest.java +++ b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/inheritance/ProblematicVarargsMethodOverrideInspectionTest.java @@ -34,6 +34,17 @@ public class ProblematicVarargsMethodOverrideInspectionTest extends LightInspect "}"); } + public void testVarargsOverriding() { + doTest("class One {" + + " void m(String... ss) {" + + " }" + + "}" + + "class Two extends One {" + + " void m(String... ss) {" + + " }" + + "}"); + } + @Override protected InspectionProfileEntry getInspection() { return new ProblematicVarargsMethodOverrideInspection();