langtools/src/share/classes/com/sun/tools/javac/jvm/ClassReader.java
changeset 14369 3d660d08d1f7
parent 14359 d4099818ab70
child 14443 91c05eb19277
equal deleted inserted replaced
14368:6f4c62de6985 14369:3d660d08d1f7
  1016             new AttributeReader(names.SourceFile, V45_3, CLASS_ATTRIBUTE) {
  1016             new AttributeReader(names.SourceFile, V45_3, CLASS_ATTRIBUTE) {
  1017                 protected void read(Symbol sym, int attrLen) {
  1017                 protected void read(Symbol sym, int attrLen) {
  1018                     ClassSymbol c = (ClassSymbol) sym;
  1018                     ClassSymbol c = (ClassSymbol) sym;
  1019                     Name n = readName(nextChar());
  1019                     Name n = readName(nextChar());
  1020                     c.sourcefile = new SourceFileObject(n, c.flatname);
  1020                     c.sourcefile = new SourceFileObject(n, c.flatname);
       
  1021                     // If the class is a toplevel class, originating from a Java source file,
       
  1022                     // but the class name does not match the file name, then it is
       
  1023                     // an auxiliary class.
       
  1024                     String sn = n.toString();
       
  1025                     if (c.owner.kind == Kinds.PCK &&
       
  1026                         sn.endsWith(".java") &&
       
  1027                         !sn.equals(c.name.toString()+".java")) {
       
  1028                         c.flags_field |= AUXILIARY;
       
  1029                     }
  1021                 }
  1030                 }
  1022             },
  1031             },
  1023 
  1032 
  1024             new AttributeReader(names.Synthetic, V45_3, CLASS_OR_MEMBER_ATTRIBUTE) {
  1033             new AttributeReader(names.Synthetic, V45_3, CLASS_OR_MEMBER_ATTRIBUTE) {
  1025                 protected void read(Symbol sym, int attrLen) {
  1034                 protected void read(Symbol sym, int attrLen) {