1323 modules.newRound();
1324 types.newRound();
1325 annotate.newRound();
1326 elementUtils.newRound();
1327
1328 boolean foundError = false;
1329
1330 for (ClassSymbol cs : symtab.getAllClasses()) {
1331 if (cs.kind == ERR) {
1332 foundError = true;
1333 break;
1334 }
1335 }
1336
1337 if (foundError) {
1338 for (ClassSymbol cs : symtab.getAllClasses()) {
1339 if (cs.classfile != null || cs.kind == ERR) {
1340 Kinds.Kind symKind = cs.kind;
1341 cs.reset();
1342 if (symKind == ERR) {
1343 cs.type = new ClassType(cs.type.getEnclosingType(), null, cs);
1344 }
1345 if (cs.isCompleted()) {
1346 cs.completer = initialCompleter;
1347 }
1348 }
1349 }
1350 }
1351 }
1352 }
1353
1354
1355 // TODO: internal catch clauses?; catch and rethrow an annotation
1356 // processing error
1357 public boolean doProcessing(List<JCCompilationUnit> roots,
1358 List<ClassSymbol> classSymbols,
1359 Iterable<? extends PackageSymbol> pckSymbols,
1360 Log.DeferredDiagnosticHandler deferredDiagnosticHandler) {
1361 final Set<JCCompilationUnit> treesToClean =
1362 Collections.newSetFromMap(new IdentityHashMap<JCCompilationUnit, Boolean>());
1363
|
1323 modules.newRound();
1324 types.newRound();
1325 annotate.newRound();
1326 elementUtils.newRound();
1327
1328 boolean foundError = false;
1329
1330 for (ClassSymbol cs : symtab.getAllClasses()) {
1331 if (cs.kind == ERR) {
1332 foundError = true;
1333 break;
1334 }
1335 }
1336
1337 if (foundError) {
1338 for (ClassSymbol cs : symtab.getAllClasses()) {
1339 if (cs.classfile != null || cs.kind == ERR) {
1340 Kinds.Kind symKind = cs.kind;
1341 cs.reset();
1342 if (symKind == ERR) {
1343 cs.type = new ClassType(cs.type.getEnclosingType(), null, cs, List.nil());
1344 }
1345 if (cs.isCompleted()) {
1346 cs.completer = initialCompleter;
1347 }
1348 }
1349 }
1350 }
1351 }
1352 }
1353
1354
1355 // TODO: internal catch clauses?; catch and rethrow an annotation
1356 // processing error
1357 public boolean doProcessing(List<JCCompilationUnit> roots,
1358 List<ClassSymbol> classSymbols,
1359 Iterable<? extends PackageSymbol> pckSymbols,
1360 Log.DeferredDiagnosticHandler deferredDiagnosticHandler) {
1361 final Set<JCCompilationUnit> treesToClean =
1362 Collections.newSetFromMap(new IdentityHashMap<JCCompilationUnit, Boolean>());
1363
|