1489 @Override 1490 public void visitMethodDef(JCMethodDecl tree) { 1491 tree.mods.flags &= ~Flags.SYNCHRONIZED; 1492 for (JCVariableDecl vd : tree.params) 1493 vd.mods.flags &= ~Flags.FINAL; 1494 tree.body = null; 1495 super.visitMethodDef(tree); 1496 } 1497 @Override 1498 public void visitVarDef(JCVariableDecl tree) { 1499 if (tree.init != null && tree.init.type.constValue() == null) 1500 tree.init = null; 1501 super.visitVarDef(tree); 1502 } 1503 @Override 1504 public void visitClassDef(JCClassDecl tree) { 1505 ListBuffer<JCTree> newdefs = lb(); 1506 for (List<JCTree> it = tree.defs; it.tail != null; it = it.tail) { 1507 JCTree t = it.head; 1508 switch (t.getTag()) { 1509 case JCTree.CLASSDEF: 1510 if (isInterface || 1511 (((JCClassDecl) t).mods.flags & (Flags.PROTECTED|Flags.PUBLIC)) != 0 || 1512 (((JCClassDecl) t).mods.flags & (Flags.PRIVATE)) == 0 && ((JCClassDecl) t).sym.packge().getQualifiedName() == names.java_lang) 1513 newdefs.append(t); 1514 break; 1515 case JCTree.METHODDEF: 1516 if (isInterface || 1517 (((JCMethodDecl) t).mods.flags & (Flags.PROTECTED|Flags.PUBLIC)) != 0 || 1518 ((JCMethodDecl) t).sym.name == names.init || 1519 (((JCMethodDecl) t).mods.flags & (Flags.PRIVATE)) == 0 && ((JCMethodDecl) t).sym.packge().getQualifiedName() == names.java_lang) 1520 newdefs.append(t); 1521 break; 1522 case JCTree.VARDEF: 1523 if (isInterface || (((JCVariableDecl) t).mods.flags & (Flags.PROTECTED|Flags.PUBLIC)) != 0 || 1524 (((JCVariableDecl) t).mods.flags & (Flags.PRIVATE)) == 0 && ((JCVariableDecl) t).sym.packge().getQualifiedName() == names.java_lang) 1525 newdefs.append(t); 1526 break; 1527 default: 1528 break; 1529 } 1530 } 1531 tree.defs = newdefs.toList(); 1532 super.visitClassDef(tree); 1533 } 1534 } 1535 MethodBodyRemover r = new MethodBodyRemover(); 1536 return r.translate(cdef); 1537 } 1538 1539 public void reportDeferredDiagnostics() { 1540 if (errorCount() == 0 1541 && annotationProcessingOccurred 1542 && implicitSourceFilesRead | 1489 @Override 1490 public void visitMethodDef(JCMethodDecl tree) { 1491 tree.mods.flags &= ~Flags.SYNCHRONIZED; 1492 for (JCVariableDecl vd : tree.params) 1493 vd.mods.flags &= ~Flags.FINAL; 1494 tree.body = null; 1495 super.visitMethodDef(tree); 1496 } 1497 @Override 1498 public void visitVarDef(JCVariableDecl tree) { 1499 if (tree.init != null && tree.init.type.constValue() == null) 1500 tree.init = null; 1501 super.visitVarDef(tree); 1502 } 1503 @Override 1504 public void visitClassDef(JCClassDecl tree) { 1505 ListBuffer<JCTree> newdefs = lb(); 1506 for (List<JCTree> it = tree.defs; it.tail != null; it = it.tail) { 1507 JCTree t = it.head; 1508 switch (t.getTag()) { 1509 case CLASSDEF: 1510 if (isInterface || 1511 (((JCClassDecl) t).mods.flags & (Flags.PROTECTED|Flags.PUBLIC)) != 0 || 1512 (((JCClassDecl) t).mods.flags & (Flags.PRIVATE)) == 0 && ((JCClassDecl) t).sym.packge().getQualifiedName() == names.java_lang) 1513 newdefs.append(t); 1514 break; 1515 case METHODDEF: 1516 if (isInterface || 1517 (((JCMethodDecl) t).mods.flags & (Flags.PROTECTED|Flags.PUBLIC)) != 0 || 1518 ((JCMethodDecl) t).sym.name == names.init || 1519 (((JCMethodDecl) t).mods.flags & (Flags.PRIVATE)) == 0 && ((JCMethodDecl) t).sym.packge().getQualifiedName() == names.java_lang) 1520 newdefs.append(t); 1521 break; 1522 case VARDEF: 1523 if (isInterface || (((JCVariableDecl) t).mods.flags & (Flags.PROTECTED|Flags.PUBLIC)) != 0 || 1524 (((JCVariableDecl) t).mods.flags & (Flags.PRIVATE)) == 0 && ((JCVariableDecl) t).sym.packge().getQualifiedName() == names.java_lang) 1525 newdefs.append(t); 1526 break; 1527 default: 1528 break; 1529 } 1530 } 1531 tree.defs = newdefs.toList(); 1532 super.visitClassDef(tree); 1533 } 1534 } 1535 MethodBodyRemover r = new MethodBodyRemover(); 1536 return r.translate(cdef); 1537 } 1538 1539 public void reportDeferredDiagnostics() { 1540 if (errorCount() == 0 1541 && annotationProcessingOccurred 1542 && implicitSourceFilesRead |