diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/EquivalenceChecker.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/EquivalenceChecker.java index d49d22d00c57..0fc9940c9cb9 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/EquivalenceChecker.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/psiutils/EquivalenceChecker.java @@ -804,6 +804,10 @@ public class EquivalenceChecker { final PsiExpression[] args1 = argumentList1 == null ? null : argumentList1.getExpressions(); final PsiExpressionList argumentList2 = newExpression2.getArgumentList(); final PsiExpression[] args2 = argumentList2 == null ? null : argumentList2.getExpressions(); + if (newExpression1.getAnonymousClass() != null || newExpression2.getAnonymousClass() != null) { + // simply consider any anonymous classes not matching + return EXACT_MISMATCH; + } return expressionsAreEquivalent(args1, args2); } diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/inheritance/redundant_method_override/RedundantMethodOverride.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/inheritance/redundant_method_override/RedundantMethodOverride.java index 9bdfc8e02ca1..b90d9f63e26b 100644 --- a/plugins/InspectionGadgets/test/com/siyeh/igtest/inheritance/redundant_method_override/RedundantMethodOverride.java +++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/inheritance/redundant_method_override/RedundantMethodOverride.java @@ -198,4 +198,20 @@ class Declaration { }; } } +} +////////////// +class DifferentAnonymous { + + Object x() { + return new Object() { + int one; + }; + } +} +class DifferentAnonymous2 extends DifferentAnonymous { + + @Override + Object x() { + return new Object() {}; + } } \ No newline at end of file