diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java
index 9bda079a5260..8c1c539d010b 100644
--- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java
+++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightMethodUtil.java
@@ -806,10 +806,12 @@ public class HighlightMethodUtil {
if (aClass != null) {
String className = aClass instanceof PsiAnonymousClass ? null : aClass.getName();
- if (className != null && !Comparing.strEqual(methodName, className)) {
+ if (className == null || !Comparing.strEqual(methodName, className)) {
errorResult = HighlightInfo.createHighlightInfo(HighlightInfoType.ERROR, method.getNameIdentifier(),
JavaErrorMessages.message("missing.return.type"));
- QuickFixAction.registerQuickFixAction(errorResult, new RenameElementFix(method, className));
+ if (className != null) {
+ QuickFixAction.registerQuickFixAction(errorResult, new RenameElementFix(method, className));
+ }
}
}
return errorResult;
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting/InvalidExpressions.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting/InvalidExpressions.java
index 91315f1707f3..79ab2bdd2748 100644
--- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting/InvalidExpressions.java
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting/InvalidExpressions.java
@@ -99,6 +99,12 @@ public class a12 {
public foo() {
}
+ {
+ new Object() {
+ Object() {}
+ };
+ }
+
// do not warn about illegal type in incomplete declarations (http://www.intellij.net/tracker/idea/viewSCR?publicId=9586)
void foo
}