equal
deleted
inserted
replaced
404 boolean alivePrev = alive; |
404 boolean alivePrev = alive; |
405 ListBuffer<PendingExit> pendingExitsPrev = pendingExits; |
405 ListBuffer<PendingExit> pendingExitsPrev = pendingExits; |
406 Lint lintPrev = lint; |
406 Lint lintPrev = lint; |
407 |
407 |
408 pendingExits = new ListBuffer<PendingExit>(); |
408 pendingExits = new ListBuffer<PendingExit>(); |
409 lint = lint.augment(tree.sym.attributes_field); |
409 lint = lint.augment(tree.sym.annotations); |
410 |
410 |
411 try { |
411 try { |
412 // process all the static initializers |
412 // process all the static initializers |
413 for (List<JCTree> l = tree.defs; l.nonEmpty(); l = l.tail) { |
413 for (List<JCTree> l = tree.defs; l.nonEmpty(); l = l.tail) { |
414 if (!l.head.hasTag(METHODDEF) && |
414 if (!l.head.hasTag(METHODDEF) && |
440 |
440 |
441 public void visitMethodDef(JCMethodDecl tree) { |
441 public void visitMethodDef(JCMethodDecl tree) { |
442 if (tree.body == null) return; |
442 if (tree.body == null) return; |
443 Lint lintPrev = lint; |
443 Lint lintPrev = lint; |
444 |
444 |
445 lint = lint.augment(tree.sym.attributes_field); |
445 lint = lint.augment(tree.sym.annotations); |
446 |
446 |
447 Assert.check(pendingExits.isEmpty()); |
447 Assert.check(pendingExits.isEmpty()); |
448 |
448 |
449 try { |
449 try { |
450 alive = true; |
450 alive = true; |
466 } |
466 } |
467 |
467 |
468 public void visitVarDef(JCVariableDecl tree) { |
468 public void visitVarDef(JCVariableDecl tree) { |
469 if (tree.init != null) { |
469 if (tree.init != null) { |
470 Lint lintPrev = lint; |
470 Lint lintPrev = lint; |
471 lint = lint.augment(tree.sym.attributes_field); |
471 lint = lint.augment(tree.sym.annotations); |
472 try{ |
472 try{ |
473 scan(tree.init); |
473 scan(tree.init); |
474 } finally { |
474 } finally { |
475 lint = lintPrev; |
475 lint = lintPrev; |
476 } |
476 } |
781 if (tree.name != names.empty) { |
781 if (tree.name != names.empty) { |
782 caught = List.nil(); |
782 caught = List.nil(); |
783 } |
783 } |
784 classDef = tree; |
784 classDef = tree; |
785 thrown = List.nil(); |
785 thrown = List.nil(); |
786 lint = lint.augment(tree.sym.attributes_field); |
786 lint = lint.augment(tree.sym.annotations); |
787 |
787 |
788 try { |
788 try { |
789 // process all the static initializers |
789 // process all the static initializers |
790 for (List<JCTree> l = tree.defs; l.nonEmpty(); l = l.tail) { |
790 for (List<JCTree> l = tree.defs; l.nonEmpty(); l = l.tail) { |
791 if (!l.head.hasTag(METHODDEF) && |
791 if (!l.head.hasTag(METHODDEF) && |
861 |
861 |
862 List<Type> caughtPrev = caught; |
862 List<Type> caughtPrev = caught; |
863 List<Type> mthrown = tree.sym.type.getThrownTypes(); |
863 List<Type> mthrown = tree.sym.type.getThrownTypes(); |
864 Lint lintPrev = lint; |
864 Lint lintPrev = lint; |
865 |
865 |
866 lint = lint.augment(tree.sym.attributes_field); |
866 lint = lint.augment(tree.sym.annotations); |
867 |
867 |
868 Assert.check(pendingExits.isEmpty()); |
868 Assert.check(pendingExits.isEmpty()); |
869 |
869 |
870 try { |
870 try { |
871 for (List<JCVariableDecl> l = tree.params; l.nonEmpty(); l = l.tail) { |
871 for (List<JCVariableDecl> l = tree.params; l.nonEmpty(); l = l.tail) { |
900 } |
900 } |
901 |
901 |
902 public void visitVarDef(JCVariableDecl tree) { |
902 public void visitVarDef(JCVariableDecl tree) { |
903 if (tree.init != null) { |
903 if (tree.init != null) { |
904 Lint lintPrev = lint; |
904 Lint lintPrev = lint; |
905 lint = lint.augment(tree.sym.attributes_field); |
905 lint = lint.augment(tree.sym.annotations); |
906 try{ |
906 try{ |
907 scan(tree.init); |
907 scan(tree.init); |
908 } finally { |
908 } finally { |
909 lint = lintPrev; |
909 lint = lintPrev; |
910 } |
910 } |
1489 pendingExits = new ListBuffer<AssignPendingExit>(); |
1489 pendingExits = new ListBuffer<AssignPendingExit>(); |
1490 if (tree.name != names.empty) { |
1490 if (tree.name != names.empty) { |
1491 firstadr = nextadr; |
1491 firstadr = nextadr; |
1492 } |
1492 } |
1493 classDef = tree; |
1493 classDef = tree; |
1494 lint = lint.augment(tree.sym.attributes_field); |
1494 lint = lint.augment(tree.sym.annotations); |
1495 |
1495 |
1496 try { |
1496 try { |
1497 // define all the static fields |
1497 // define all the static fields |
1498 for (List<JCTree> l = tree.defs; l.nonEmpty(); l = l.tail) { |
1498 for (List<JCTree> l = tree.defs; l.nonEmpty(); l = l.tail) { |
1499 if (l.head.hasTag(VARDEF)) { |
1499 if (l.head.hasTag(VARDEF)) { |
1556 Bits uninitsPrev = uninits.dup(); |
1556 Bits uninitsPrev = uninits.dup(); |
1557 int nextadrPrev = nextadr; |
1557 int nextadrPrev = nextadr; |
1558 int firstadrPrev = firstadr; |
1558 int firstadrPrev = firstadr; |
1559 Lint lintPrev = lint; |
1559 Lint lintPrev = lint; |
1560 |
1560 |
1561 lint = lint.augment(tree.sym.attributes_field); |
1561 lint = lint.augment(tree.sym.annotations); |
1562 |
1562 |
1563 Assert.check(pendingExits.isEmpty()); |
1563 Assert.check(pendingExits.isEmpty()); |
1564 |
1564 |
1565 try { |
1565 try { |
1566 boolean isInitialConstructor = |
1566 boolean isInitialConstructor = |
1607 public void visitVarDef(JCVariableDecl tree) { |
1607 public void visitVarDef(JCVariableDecl tree) { |
1608 boolean track = trackable(tree.sym); |
1608 boolean track = trackable(tree.sym); |
1609 if (track && tree.sym.owner.kind == MTH) newVar(tree.sym); |
1609 if (track && tree.sym.owner.kind == MTH) newVar(tree.sym); |
1610 if (tree.init != null) { |
1610 if (tree.init != null) { |
1611 Lint lintPrev = lint; |
1611 Lint lintPrev = lint; |
1612 lint = lint.augment(tree.sym.attributes_field); |
1612 lint = lint.augment(tree.sym.annotations); |
1613 try{ |
1613 try{ |
1614 scanExpr(tree.init); |
1614 scanExpr(tree.init); |
1615 if (track) letInit(tree.pos(), tree.sym); |
1615 if (track) letInit(tree.pos(), tree.sym); |
1616 } finally { |
1616 } finally { |
1617 lint = lintPrev; |
1617 lint = lintPrev; |