langtools/src/share/classes/com/sun/tools/javac/jvm/Gen.java
changeset 18010 604faee85350
parent 17578 46ac954e4a84
child 18653 1407564fb956
equal deleted inserted replaced
18009:f47ea7c9c3f4 18010:604faee85350
   516             }
   516             }
   517         }
   517         }
   518         // Insert any instance initializers into all constructors.
   518         // Insert any instance initializers into all constructors.
   519         if (initCode.length() != 0) {
   519         if (initCode.length() != 0) {
   520             List<JCStatement> inits = initCode.toList();
   520             List<JCStatement> inits = initCode.toList();
   521             initTAs.addAll(c.annotations.getInitTypeAttributes());
   521             initTAs.addAll(c.getInitTypeAttributes());
   522             List<Attribute.TypeCompound> initTAlist = initTAs.toList();
   522             List<Attribute.TypeCompound> initTAlist = initTAs.toList();
   523             for (JCTree t : methodDefs) {
   523             for (JCTree t : methodDefs) {
   524                 normalizeMethod((JCMethodDecl)t, inits, initTAlist);
   524                 normalizeMethod((JCMethodDecl)t, inits, initTAlist);
   525             }
   525             }
   526         }
   526         }
   539             JCBlock block = make.at(clinitStats.head.pos()).Block(0, clinitStats);
   539             JCBlock block = make.at(clinitStats.head.pos()).Block(0, clinitStats);
   540             block.endpos = TreeInfo.endPos(clinitStats.last());
   540             block.endpos = TreeInfo.endPos(clinitStats.last());
   541             methodDefs.append(make.MethodDef(clinit, block));
   541             methodDefs.append(make.MethodDef(clinit, block));
   542 
   542 
   543             if (!clinitTAs.isEmpty())
   543             if (!clinitTAs.isEmpty())
   544                 clinit.annotations.appendUniqueTypes(clinitTAs.toList());
   544                 clinit.appendUniqueTypeAttributes(clinitTAs.toList());
   545             if (!c.annotations.getClassInitTypeAttributes().isEmpty())
   545             if (!c.getClassInitTypeAttributes().isEmpty())
   546                 clinit.annotations.appendUniqueTypes(c.annotations.getClassInitTypeAttributes());
   546                 clinit.appendUniqueTypeAttributes(c.getClassInitTypeAttributes());
   547         }
   547         }
   548         // Return all method definitions.
   548         // Return all method definitions.
   549         return methodDefs.toList();
   549         return methodDefs.toList();
   550     }
   550     }
   551 
   551 
   558                 fieldTAs.add(ta);
   558                 fieldTAs.add(ta);
   559             } else {
   559             } else {
   560                 nonfieldTAs.add(ta);
   560                 nonfieldTAs.add(ta);
   561             }
   561             }
   562         }
   562         }
   563         sym.annotations.setTypeAttributes(fieldTAs.toList());
   563         sym.setTypeAttributes(fieldTAs.toList());
   564         return nonfieldTAs.toList();
   564         return nonfieldTAs.toList();
   565     }
   565     }
   566 
   566 
   567     /** Check a constant value and report if it is a string that is
   567     /** Check a constant value and report if it is a string that is
   568      *  too large.
   568      *  too large.
   616             }
   616             }
   617             md.body.stats = newstats.toList();
   617             md.body.stats = newstats.toList();
   618             if (md.body.endpos == Position.NOPOS)
   618             if (md.body.endpos == Position.NOPOS)
   619                 md.body.endpos = TreeInfo.endPos(md.body.stats.last());
   619                 md.body.endpos = TreeInfo.endPos(md.body.stats.last());
   620 
   620 
   621             md.sym.annotations.appendUniqueTypes(initTAs);
   621             md.sym.appendUniqueTypeAttributes(initTAs);
   622         }
   622         }
   623     }
   623     }
   624 
   624 
   625 /* ********************************************************************
   625 /* ********************************************************************
   626  * Adding miranda methods
   626  * Adding miranda methods