### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core Index: compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java,v retrieving revision 1.342 diff -u -r1.342 ProblemReporter.java --- compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java 26 Feb 2007 08:48:59 -0000 1.342 +++ compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java 28 Feb 2007 15:53:25 -0000 @@ -1892,6 +1892,8 @@ location.sourceEnd); } public void illegalLocalTypeDeclaration(TypeDeclaration typeDeclaration) { + if (isRecoveredName(typeDeclaration.name)) return; + int problemID = 0; if ((typeDeclaration.modifiers & ClassFileConstants.AccEnum) != 0) { problemID = IProblem.CannotDefineEnumInLocalType; #P org.eclipse.jdt.core.tests.compiler Index: src/org/eclipse/jdt/core/tests/compiler/regression/AnnotationTest.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/AnnotationTest.java,v retrieving revision 1.162 diff -u -r1.162 AnnotationTest.java --- src/org/eclipse/jdt/core/tests/compiler/regression/AnnotationTest.java 25 Jan 2007 18:11:42 -0000 1.162 +++ src/org/eclipse/jdt/core/tests/compiler/regression/AnnotationTest.java 28 Feb 2007 15:53:28 -0000 @@ -7506,4 +7506,37 @@ }, ""); } +//https://bugs.eclipse.org/bugs/show_bug.cgi?id=XXXXX +public void test225() { + runNegativeTest( + new String[] { + "X.java", + "public class X {\n"+ + " public void myMethod() {\n"+ + " @MyAnnot1()\n"+ + " }\n"+ + "}\n"+ + "@interface MyAnnot1 {\n"+ + "}" + }, + "----------\n" + + "1. ERROR in X.java (at line 3)\n" + + " @MyAnnot1()\n" + + " ^\n" + + "Syntax error, insert \"enum Identifier\" to complete EnumHeader\n" + + "----------\n" + + "2. ERROR in X.java (at line 3)\n" + + " @MyAnnot1()\n" + + " ^\n" + + "Syntax error, insert \"EnumBody\" to complete BlockStatements\n" + + "----------\n", + null, + true, + null /* no custom options */, + false /* do not generate output */, + false /* do not show category */, + false /* do not show warning token */, + false /* do not skip javac for this peculiar test */, + true /* do not perform statements recovery */); +} }