src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java

changeset 816
7c537f4298fb
parent 815
d17f37522154
child 909
7798e3a5ecf5
     1.1 --- a/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java	Mon Jan 10 14:57:59 2011 -0800
     1.2 +++ b/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java	Mon Jan 10 15:08:31 2011 -0800
     1.3 @@ -219,11 +219,14 @@
     1.4      /** Return flags as a string, separated by " ".
     1.5       */
     1.6      public static String flagNames(long flags) {
     1.7 -        StringBuffer sbuf = new StringBuffer();
     1.8 +        StringBuilder sbuf = new StringBuilder();
     1.9          int i = 0;
    1.10          long f = flags & StandardFlags;
    1.11          while (f != 0) {
    1.12 -            if ((f & 1) != 0) sbuf.append(" " + flagName[i]);
    1.13 +            if ((f & 1) != 0) {
    1.14 +                sbuf.append(" ");
    1.15 +                sbuf.append(flagName[i]);
    1.16 +            }
    1.17              f = f >> 1;
    1.18              i++;
    1.19          }
    1.20 @@ -376,7 +379,7 @@
    1.21                               ? types.erasure(outer)
    1.22                               : outer);
    1.23              sigbuf.appendByte('.');
    1.24 -            assert c.flatname.startsWith(c.owner.enclClass().flatname);
    1.25 +            Assert.check(c.flatname.startsWith(c.owner.enclClass().flatname));
    1.26              sigbuf.appendName(rawOuter
    1.27                                ? c.flatname.subName(c.owner.enclClass().flatname.getByteLength()+1,c.flatname.getByteLength())
    1.28                                : c.name);
    1.29 @@ -416,7 +419,7 @@
    1.30      /** Return signature of given type
    1.31       */
    1.32      Name typeSig(Type type) {
    1.33 -        assert sigbuf.length == 0;
    1.34 +        Assert.check(sigbuf.length == 0);
    1.35          //- System.out.println(" ? " + type);
    1.36          assembleSig(type);
    1.37          Name n = sigbuf.toName(names);
    1.38 @@ -466,7 +469,7 @@
    1.39          int i = 1;
    1.40          while (i < pool.pp) {
    1.41              Object value = pool.pool[i];
    1.42 -            assert value != null;
    1.43 +            Assert.checkNonNull(value);
    1.44              if (value instanceof Pool.Method)
    1.45                  value = ((Pool.Method)value).m;
    1.46              else if (value instanceof Pool.Variable)
    1.47 @@ -529,7 +532,7 @@
    1.48                  poolbuf.appendByte(CONSTANT_Class);
    1.49                  poolbuf.appendChar(pool.put(xClassName(type)));
    1.50              } else {
    1.51 -                assert false : "writePool " + value;
    1.52 +                Assert.error("writePool " + value);
    1.53              }
    1.54              i++;
    1.55          }
    1.56 @@ -798,7 +801,7 @@
    1.57                  databuf.appendByte('Z');
    1.58                  break;
    1.59              case CLASS:
    1.60 -                assert value instanceof String;
    1.61 +                Assert.check(value instanceof String);
    1.62                  databuf.appendByte('s');
    1.63                  value = names.fromString(value.toString()); // CONSTANT_Utf8
    1.64                  break;
    1.65 @@ -1015,11 +1018,11 @@
    1.66                  Code.LocalVar var = code.varBuffer[i];
    1.67  
    1.68                  // write variable info
    1.69 -                assert var.start_pc >= 0;
    1.70 -                assert var.start_pc <= code.cp;
    1.71 +                Assert.check(var.start_pc >= 0
    1.72 +                        && var.start_pc <= code.cp);
    1.73                  databuf.appendChar(var.start_pc);
    1.74 -                assert var.length >= 0;
    1.75 -                assert (var.start_pc + var.length) <= code.cp;
    1.76 +                Assert.check(var.length >= 0
    1.77 +                        && (var.start_pc + var.length) <= code.cp);
    1.78                  databuf.appendChar(var.length);
    1.79                  VarSymbol sym = var.sym;
    1.80                  databuf.appendChar(pool.put(sym.name));
    1.81 @@ -1051,7 +1054,7 @@
    1.82                  databuf.appendChar(pool.put(typeSig(sym.type)));
    1.83                  databuf.appendChar(var.reg);
    1.84              }
    1.85 -            assert count == nGenericVars;
    1.86 +            Assert.check(count == nGenericVars);
    1.87              endAttr(alenIdx);
    1.88              acount++;
    1.89          }
    1.90 @@ -1122,7 +1125,7 @@
    1.91              }
    1.92              break;
    1.93          case JSR202: {
    1.94 -            assert code.stackMapBuffer == null;
    1.95 +            Assert.checkNull(code.stackMapBuffer);
    1.96              for (int i=0; i<nframes; i++) {
    1.97                  if (debugstackmap) System.out.print("  " + i + ":");
    1.98                  StackMapTableFrame frame = code.stackMapTableBuffer[i];
    1.99 @@ -1462,7 +1465,7 @@
   1.100       */
   1.101      public void writeClassFile(OutputStream out, ClassSymbol c)
   1.102          throws IOException, PoolOverflow, StringOverflow {
   1.103 -        assert (c.flags() & COMPOUND) == 0;
   1.104 +        Assert.check((c.flags() & COMPOUND) == 0);
   1.105          databuf.reset();
   1.106          poolbuf.reset();
   1.107          sigbuf.reset();
   1.108 @@ -1499,7 +1502,7 @@
   1.109              case MTH: if ((e.sym.flags() & HYPOTHETICAL) == 0) methodsCount++;
   1.110                        break;
   1.111              case TYP: enterInner((ClassSymbol)e.sym); break;
   1.112 -            default : assert false;
   1.113 +            default : Assert.error();
   1.114              }
   1.115          }
   1.116          databuf.appendChar(fieldsCount);
   1.117 @@ -1515,7 +1518,7 @@
   1.118          for (List<Type> l = interfaces; !sigReq && l.nonEmpty(); l = l.tail)
   1.119              sigReq = l.head.allparams().length() != 0;
   1.120          if (sigReq) {
   1.121 -            assert source.allowGenerics();
   1.122 +            Assert.check(source.allowGenerics());
   1.123              int alenIdx = writeAttr(names.Signature);
   1.124              if (typarams.length() != 0) assembleParamsSig(typarams);
   1.125              assembleSig(supertype);

mercurial