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);