Community
Participate
Working Groups
I have noticed that ajc does significantly worse at isolating/recovering from compiler errors than javac. For example, on a recent project build of a pure Java file, I was refactoring to change the return type of a method, but I forgot to delete the void return. So the single compiler error was this line: protected void FailureStats addFailure(FailureDescription failureDescription) { ajc reports about 35 compiler errors (!) from this one problem. By contrast, I recompiled this code in a test Java project and Eclipse's Java compiler and it had four, useful errors that would make the problem easy to track down: Severity Description Resource In Folder Location Creation Time Id 2 The method addFailure(FailureDescription) is undefined for the type PerfStatsImpl PerfStatsImpl.java testajccompiler/src/glassbox/track/api line 360 February 15, 2006 2:20:34 PM 2405281 2 Return type for the method is missing PerfStatsImpl.java testajccompiler/src/glassbox/track/api line 367 February 15, 2006 2:20:34 PM 2405284 2 Syntax error, insert ";" to complete FieldDeclaration PerfStatsImpl.java testajccompiler/src/glassbox/track/api line 367 February 15, 2006 2:20:34 PM 2405283 2 void is an invalid type for the variable FailureStats PerfStatsImpl.java testajccompiler/src/glassbox/track/api line 367 February 15, 2006 2:20:34 PM 2405282 Here are the ajc compiler errors from compiling inside Eclipse: Severity Description Resource In Folder Location Creation Time Id 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 96 February 15, 2006 12:42:47 PM 2403725 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 103 February 15, 2006 12:42:47 PM 2403726 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 150 February 15, 2006 12:42:47 PM 2403727 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 170 February 15, 2006 12:42:47 PM 2403728 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 191 February 15, 2006 12:42:47 PM 2403729 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 192 February 15, 2006 12:42:47 PM 2403730 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 193 February 15, 2006 12:42:47 PM 2403731 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 194 February 15, 2006 12:42:47 PM 2403732 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 195 February 15, 2006 12:42:47 PM 2403733 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 196 February 15, 2006 12:42:47 PM 2403734 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 197 February 15, 2006 12:42:47 PM 2403735 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 198 February 15, 2006 12:42:47 PM 2403736 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 199 February 15, 2006 12:42:47 PM 2403737 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 289 February 15, 2006 12:42:47 PM 2403738 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 298 February 15, 2006 12:42:47 PM 2403739 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 299 February 15, 2006 12:42:47 PM 2403740 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 338 February 15, 2006 12:42:47 PM 2403741 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 362 February 15, 2006 12:42:47 PM 2403742 2 Syntax error, insert ";" to complete FieldDeclaration PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 367 February 15, 2006 12:42:47 PM 2403743 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 371 February 15, 2006 12:42:47 PM 2403744 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 381 February 15, 2006 12:42:47 PM 2403745 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 384 February 15, 2006 12:42:47 PM 2403746 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 398 February 15, 2006 12:42:47 PM 2403747 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 401 February 15, 2006 12:42:47 PM 2403748 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 403 February 15, 2006 12:42:47 PM 2403749 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 405 February 15, 2006 12:42:47 PM 2403750 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 415 February 15, 2006 12:42:47 PM 2403751 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 418 February 15, 2006 12:42:47 PM 2403752 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 421 February 15, 2006 12:42:47 PM 2403753 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 456 February 15, 2006 12:42:47 PM 2403754 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 460 February 15, 2006 12:42:47 PM 2403755 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 471 February 15, 2006 12:42:47 PM 2403756 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 522 February 15, 2006 12:42:47 PM 2403757 2 Syntax error on tokens, valid member declaration expected instead PerfStatsImpl.java crankjAgent/src/glassbox/track/api line 523 February 15, 2006 12:42:47 PM 2403758
our poor parser recovery is already covered by bug 42660, this is another case. *** This bug has been marked as a duplicate of 42660 ***