You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2015/08/12 17:29:24 UTC

svn commit: r1695556 - in /commons/proper/bcel/trunk/src: changes/ main/java/org/apache/commons/bcel6/ main/java/org/apache/commons/bcel6/classfile/ main/java/org/apache/commons/bcel6/util/ main/java/org/apache/commons/bcel6/verifier/statics/ main/java...

Author: sebb
Date: Wed Aug 12 15:29:23 2015
New Revision: 1695556

URL: http://svn.apache.org/r1695556
Log:
BCEL-239 Interfaces should not be used to define constants

Modified:
    commons/proper/bcel/trunk/src/changes/changes.xml
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java
    commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java
    commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java
    commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java
    commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java
    commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java
    commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java

Modified: commons/proper/bcel/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/changes/changes.xml?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/changes/changes.xml (original)
+++ commons/proper/bcel/trunk/src/changes/changes.xml Wed Aug 12 15:29:23 2015
@@ -63,6 +63,7 @@ The <action> type attribute can be add,u
 
   <body>
     <release version="6.0" date="TBA" description="Major release with Java 7 and 8 support">
+      <action issue="BCEL-239" type="fix">Interfaces should not be used to define constants</action>
       <action issue="BCEL-235" type="fix">Remove unused setters</action>
       <action issue="BCEL-232" type="fix">Make mutable fields private</action>
       <action issue="BCEL-233" type="fix">The access_flags field in AccessFlags class should be final</action>

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java Wed Aug 12 15:29:23 2015
@@ -22,7 +22,7 @@ package org.apache.commons.bcel6;
  *
  * @version $Id$
  */
-public interface Constants {
+public class Constants {
 
   /** Major version number of class files for Java 1.1.
    *  @see #MINOR_1_1

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java Wed Aug 12 15:29:23 2015
@@ -33,7 +33,7 @@ import org.apache.commons.bcel6.Constant
  * @version $Id: AnnotationEntry
  * @since 6.0
  */
-public class AnnotationEntry implements Node, Constants, Serializable {
+public class AnnotationEntry implements Node, Serializable {
 
     private static final long serialVersionUID = 1L;
 
@@ -43,7 +43,7 @@ public class AnnotationEntry implements
 
     private List<ElementValuePair> element_value_pairs;
 
-    /**
+    /*
      * Factory method to create an AnnotionEntry from a DataInput
      * 
      * @param input
@@ -96,7 +96,7 @@ public class AnnotationEntry implements
      * @return the annotation type name
      */
     public String getAnnotationType() {
-        final ConstantUtf8 c = (ConstantUtf8) constant_pool.getConstant(type_index, CONSTANT_Utf8);
+        final ConstantUtf8 c = (ConstantUtf8) constant_pool.getConstant(type_index, Constants.CONSTANT_Utf8);
         return c.getBytes();
     }
 

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java Wed Aug 12 15:29:23 2015
@@ -32,7 +32,7 @@ import org.apache.commons.bcel6.Constant
  * @version $Id$
  * @see     Code
  */
-public final class CodeException implements Cloneable, Constants, Node, Serializable {
+public final class CodeException implements Cloneable, Node, Serializable {
 
     private static final long serialVersionUID = 2972500041254967221L;
     private final int start_pc; // Range in the code the exception handler is
@@ -160,7 +160,7 @@ public final class CodeException impleme
         if (catch_type == 0) {
             str = "<Any exception>(0)";
         } else {
-            str = Utility.compactClassName(cp.getConstantString(catch_type, CONSTANT_Class), false)
+            str = Utility.compactClassName(cp.getConstantString(catch_type, Constants.CONSTANT_Class), false)
                     + (verbose ? "(" + catch_type + ")" : "");
         }
         return start_pc + "\t" + end_pc + "\t" + handler_pc + "\t" + str;

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java Wed Aug 12 15:29:23 2015
@@ -31,7 +31,7 @@ import org.apache.commons.bcel6.Constant
  * @version $Id$
  * @see     LocalVariableTable
  */
-public final class LocalVariable implements Constants, Cloneable, Node, Serializable {
+public final class LocalVariable implements Cloneable, Node, Serializable {
 
     private static final long serialVersionUID = -51081099265972179L;
     private final int start_pc; // Range in which the variable is valid
@@ -132,7 +132,7 @@ public final class LocalVariable impleme
      */
     public final String getName() {
         ConstantUtf8 c;
-        c = (ConstantUtf8) constant_pool.getConstant(name_index, CONSTANT_Utf8);
+        c = (ConstantUtf8) constant_pool.getConstant(name_index, Constants.CONSTANT_Utf8);
         return c.getBytes();
     }
 
@@ -150,7 +150,7 @@ public final class LocalVariable impleme
      */
     public final String getSignature() {
         ConstantUtf8 c;
-        c = (ConstantUtf8) constant_pool.getConstant(signature_index, CONSTANT_Utf8);
+        c = (ConstantUtf8) constant_pool.getConstant(signature_index, Constants.CONSTANT_Utf8);
         return c.getBytes();
     }
 

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java Wed Aug 12 15:29:23 2015
@@ -24,15 +24,13 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.commons.bcel6.Constants;
-
 /**
  * represents one parameter annotation in the parameter annotation table
  *
  * @version $Id: ParameterAnnotationEntry
  * @since 6.0
  */
-public class ParameterAnnotationEntry implements Node, Constants {
+public class ParameterAnnotationEntry implements Node {
 
     private final AnnotationEntry[] annotation_table;
 

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java Wed Aug 12 15:29:23 2015
@@ -21,6 +21,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
 
+import org.apache.commons.bcel6.Constants;
 import org.apache.commons.bcel6.classfile.Attribute;
 import org.apache.commons.bcel6.classfile.Code;
 import org.apache.commons.bcel6.classfile.CodeException;
@@ -43,7 +44,7 @@ import org.apache.commons.bcel6.classfil
  * @version $Id$
  * 
  */
-final class AttributeHTML implements org.apache.commons.bcel6.Constants {
+final class AttributeHTML {
 
     private final String class_name; // name of current class
     private final PrintWriter file; // file to write to
@@ -82,7 +83,7 @@ final class AttributeHTML implements org
     final void writeAttribute( Attribute attribute, String anchor, int method_number ) {
         byte tag = attribute.getTag();
         int index;
-        if (tag == ATTR_UNKNOWN) {
+        if (tag == Constants.ATTR_UNKNOWN) {
             return;
         }
         attr_count++; // Increment number of attributes found so far
@@ -91,12 +92,12 @@ final class AttributeHTML implements org
         } else {
             file.print("<TR BGCOLOR=\"#A0A0A0\"><TD>");
         }
-        file.println("<H4><A NAME=\"" + anchor + "\">" + attr_count + " " + ATTRIBUTE_NAMES[tag]
+        file.println("<H4><A NAME=\"" + anchor + "\">" + attr_count + " " + Constants.ATTRIBUTE_NAMES[tag]
                 + "</A></H4>");
         /* Handle different attributes
          */
         switch (tag) {
-            case ATTR_CODE:
+            case Constants.ATTR_CODE:
                 Code c = (Code) attribute;
                 // Some directly printable values
                 file.print("<UL><LI>Maximum stack size = " + c.getMaxStack()
@@ -124,20 +125,20 @@ final class AttributeHTML implements org
                     file.print("</UL>");
                 }
                 break;
-            case ATTR_CONSTANT_VALUE:
+            case Constants.ATTR_CONSTANT_VALUE:
                 index = ((ConstantValue) attribute).getConstantValueIndex();
                 // Reference _cp.html
                 file.print("<UL><LI><A HREF=\"" + class_name + "_cp.html#cp" + index
                         + "\" TARGET=\"ConstantPool\">Constant value index(" + index
                         + ")</A></UL>\n");
                 break;
-            case ATTR_SOURCE_FILE:
+            case Constants.ATTR_SOURCE_FILE:
                 index = ((SourceFile) attribute).getSourceFileIndex();
                 // Reference _cp.html
                 file.print("<UL><LI><A HREF=\"" + class_name + "_cp.html#cp" + index
                         + "\" TARGET=\"ConstantPool\">Source file index(" + index + ")</A></UL>\n");
                 break;
-            case ATTR_EXCEPTIONS:
+            case Constants.ATTR_EXCEPTIONS:
                 // List thrown exceptions
                 int[] indices = ((ExceptionTable) attribute).getExceptionIndexTable();
                 file.print("<UL>");
@@ -148,7 +149,7 @@ final class AttributeHTML implements org
                 }
                 file.print("</UL>\n");
                 break;
-            case ATTR_LINE_NUMBER_TABLE:
+            case Constants.ATTR_LINE_NUMBER_TABLE:
                 LineNumber[] line_numbers = ((LineNumberTable) attribute).getLineNumberTable();
                 // List line number pairs
                 file.print("<P>");
@@ -160,14 +161,14 @@ final class AttributeHTML implements org
                     }
                 }
                 break;
-            case ATTR_LOCAL_VARIABLE_TABLE:
+            case Constants.ATTR_LOCAL_VARIABLE_TABLE:
                 LocalVariable[] vars = ((LocalVariableTable) attribute).getLocalVariableTable();
                 // List name, range and type
                 file.print("<UL>");
                 for (LocalVariable var : vars) {
                     index = var.getSignatureIndex();
                     String signature = ((ConstantUtf8) constant_pool.getConstant(index,
-                            CONSTANT_Utf8)).getBytes();
+                            Constants.CONSTANT_Utf8)).getBytes();
                     signature = Utility.signatureToString(signature, false);
                     int start = var.getStartPC();
                     int end = (start + var.getLength());
@@ -180,7 +181,7 @@ final class AttributeHTML implements org
                 }
                 file.print("</UL>\n");
                 break;
-            case ATTR_INNER_CLASSES:
+            case Constants.ATTR_INNER_CLASSES:
                 InnerClass[] classes = ((InnerClasses) attribute).getInnerClasses();
                 // List inner classes
                 file.print("<UL>");
@@ -188,7 +189,7 @@ final class AttributeHTML implements org
                     String name, access;
                     index = classe.getInnerNameIndex();
                     if (index > 0) {
-                        name = ((ConstantUtf8) constant_pool.getConstant(index, CONSTANT_Utf8))
+                        name = ((ConstantUtf8) constant_pool.getConstant(index, Constants.CONSTANT_Utf8))
                                 .getBytes();
                     } else {
                         name = "&lt;anonymous&gt;";

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java Wed Aug 12 15:29:23 2015
@@ -51,7 +51,7 @@ import org.apache.commons.bcel6.classfil
  *
  * @version $Id$
  */
-public class Class2HTML implements Constants {
+public class Class2HTML {
 
     private final JavaClass java_class; // current class object
     private final String dir;
@@ -150,7 +150,7 @@ public class Class2HTML implements Const
      * i.e., an index to a string.
      */
     static String referenceClass( int index ) {
-        String str = constant_pool.getConstantString(index, CONSTANT_Class);
+        String str = constant_pool.getConstantString(index, Constants.CONSTANT_Class);
         str = Utility.compactClassName(str);
         str = Utility.compactClassName(str, class_package + ".", true);
         return "<A HREF=\"" + class_name + "_cp.html#cp" + index + "\" TARGET=ConstantPool>" + str

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java Wed Aug 12 15:29:23 2015
@@ -22,6 +22,7 @@ import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.BitSet;
 
+import org.apache.commons.bcel6.Constants;
 import org.apache.commons.bcel6.classfile.Attribute;
 import org.apache.commons.bcel6.classfile.Code;
 import org.apache.commons.bcel6.classfile.CodeException;
@@ -42,7 +43,7 @@ import org.apache.commons.bcel6.classfil
  * @version $Id$
  * 
  */
-final class CodeHTML implements org.apache.commons.bcel6.Constants {
+final class CodeHTML {
 
     private final String class_name; // name of current class
 //    private Method[] methods; // Methods to print
@@ -85,11 +86,11 @@ final class CodeHTML implements org.apac
         int[] jump_table;
         int no_pad_bytes = 0, offset;
         buf = new StringBuilder(256);
-        buf.append("<TT>").append(OPCODE_NAMES[opcode]).append("</TT></TD><TD>");
+        buf.append("<TT>").append(Constants.OPCODE_NAMES[opcode]).append("</TT></TD><TD>");
         /* Special case: Skip (0-3) padding bytes, i.e., the
          * following bytes are 4-byte-aligned
          */
-        if ((opcode == TABLESWITCH) || (opcode == LOOKUPSWITCH)) {
+        if ((opcode == Constants.TABLESWITCH) || (opcode == Constants.LOOKUPSWITCH)) {
             int remainder = bytes.getIndex() % 4;
             no_pad_bytes = (remainder == 0) ? 0 : 4 - remainder;
             for (int i = 0; i < no_pad_bytes; i++) {
@@ -99,7 +100,7 @@ final class CodeHTML implements org.apac
             default_offset = bytes.readInt();
         }
         switch (opcode) {
-            case TABLESWITCH:
+            case Constants.TABLESWITCH:
                 low = bytes.readInt();
                 high = bytes.readInt();
                 offset = bytes.getIndex() - 12 - no_pad_bytes - 1;
@@ -123,7 +124,7 @@ final class CodeHTML implements org.apac
                 break;
             /* Lookup switch has variable length arguments.
              */
-            case LOOKUPSWITCH:
+            case Constants.LOOKUPSWITCH:
                 int npairs = bytes.readInt();
                 offset = bytes.getIndex() - 8 - no_pad_bytes - 1;
                 jump_table = new int[npairs];
@@ -148,49 +149,49 @@ final class CodeHTML implements org.apac
             /* Two address bytes + offset from start of byte stream form the
              * jump target.
              */
-            case GOTO:
-            case IFEQ:
-            case IFGE:
-            case IFGT:
-            case IFLE:
-            case IFLT:
-            case IFNE:
-            case IFNONNULL:
-            case IFNULL:
-            case IF_ACMPEQ:
-            case IF_ACMPNE:
-            case IF_ICMPEQ:
-            case IF_ICMPGE:
-            case IF_ICMPGT:
-            case IF_ICMPLE:
-            case IF_ICMPLT:
-            case IF_ICMPNE:
-            case JSR:
+            case Constants.GOTO:
+            case Constants.IFEQ:
+            case Constants.IFGE:
+            case Constants.IFGT:
+            case Constants.IFLE:
+            case Constants.IFLT:
+            case Constants.IFNE:
+            case Constants.IFNONNULL:
+            case Constants.IFNULL:
+            case Constants.IF_ACMPEQ:
+            case Constants.IF_ACMPNE:
+            case Constants.IF_ICMPEQ:
+            case Constants.IF_ICMPGE:
+            case Constants.IF_ICMPGT:
+            case Constants.IF_ICMPLE:
+            case Constants.IF_ICMPLT:
+            case Constants.IF_ICMPNE:
+            case Constants.JSR:
                 index = (bytes.getIndex() + bytes.readShort() - 1);
                 buf.append("<A HREF=\"#code").append(method_number).append("@").append(index)
                         .append("\">").append(index).append("</A>");
                 break;
             /* Same for 32-bit wide jumps
              */
-            case GOTO_W:
-            case JSR_W:
+            case Constants.GOTO_W:
+            case Constants.JSR_W:
                 int windex = bytes.getIndex() + bytes.readInt() - 1;
                 buf.append("<A HREF=\"#code").append(method_number).append("@").append(windex)
                         .append("\">").append(windex).append("</A>");
                 break;
             /* Index byte references local variable (register)
              */
-            case ALOAD:
-            case ASTORE:
-            case DLOAD:
-            case DSTORE:
-            case FLOAD:
-            case FSTORE:
-            case ILOAD:
-            case ISTORE:
-            case LLOAD:
-            case LSTORE:
-            case RET:
+            case Constants.ALOAD:
+            case Constants.ASTORE:
+            case Constants.DLOAD:
+            case Constants.DSTORE:
+            case Constants.FLOAD:
+            case Constants.FSTORE:
+            case Constants.ILOAD:
+            case Constants.ISTORE:
+            case Constants.LLOAD:
+            case Constants.LSTORE:
+            case Constants.RET:
                 if (wide) {
                     vindex = bytes.readShort();
                     wide = false; // Clear flag
@@ -204,30 +205,30 @@ final class CodeHTML implements org.apac
              * following instruction. Relies on that the method is called again with
              * the following opcode.
              */
-            case WIDE:
+            case Constants.WIDE:
                 wide = true;
                 buf.append("(wide)");
                 break;
             /* Array of basic type.
              */
-            case NEWARRAY:
-                buf.append("<FONT COLOR=\"#00FF00\">").append(TYPE_NAMES[bytes.readByte()]).append(
+            case Constants.NEWARRAY:
+                buf.append("<FONT COLOR=\"#00FF00\">").append(Constants.TYPE_NAMES[bytes.readByte()]).append(
                         "</FONT>");
                 break;
             /* Access object/class fields.
              */
-            case GETFIELD:
-            case GETSTATIC:
-            case PUTFIELD:
-            case PUTSTATIC:
+            case Constants.GETFIELD:
+            case Constants.GETSTATIC:
+            case Constants.PUTFIELD:
+            case Constants.PUTSTATIC:
                 index = bytes.readShort();
                 ConstantFieldref c1 = (ConstantFieldref) constant_pool.getConstant(index,
-                        CONSTANT_Fieldref);
+                        Constants.CONSTANT_Fieldref);
                 class_index = c1.getClassIndex();
-                name = constant_pool.getConstantString(class_index, CONSTANT_Class);
+                name = constant_pool.getConstantString(class_index, Constants.CONSTANT_Class);
                 name = Utility.compactClassName(name, false);
                 index = c1.getNameAndTypeIndex();
-                String field_name = constant_pool.constantToString(index, CONSTANT_NameAndType);
+                String field_name = constant_pool.constantToString(index, Constants.CONSTANT_NameAndType);
                 if (name.equals(class_name)) { // Local field
                     buf.append("<A HREF=\"").append(class_name).append("_methods.html#field")
                             .append(field_name).append("\" TARGET=Methods>").append(field_name)
@@ -239,36 +240,36 @@ final class CodeHTML implements org.apac
                 break;
             /* Operands are references to classes in constant pool
              */
-            case CHECKCAST:
-            case INSTANCEOF:
-            case NEW:
+            case Constants.CHECKCAST:
+            case Constants.INSTANCEOF:
+            case Constants.NEW:
                 index = bytes.readShort();
                 buf.append(constant_html.referenceConstant(index));
                 break;
             /* Operands are references to methods in constant pool
              */
-            case INVOKESPECIAL:
-            case INVOKESTATIC:
-            case INVOKEVIRTUAL:
-            case INVOKEINTERFACE:
-            case INVOKEDYNAMIC:
+            case Constants.INVOKESPECIAL:
+            case Constants.INVOKESTATIC:
+            case Constants.INVOKEVIRTUAL:
+            case Constants.INVOKEINTERFACE:
+            case Constants.INVOKEDYNAMIC:
                 int m_index = bytes.readShort();
                 String str;
-                if (opcode == INVOKEINTERFACE) { // Special treatment needed
+                if (opcode == Constants.INVOKEINTERFACE) { // Special treatment needed
                     bytes.readUnsignedByte(); // Redundant
                     bytes.readUnsignedByte(); // Reserved
 //                    int nargs = bytes.readUnsignedByte(); // Redundant
 //                    int reserved = bytes.readUnsignedByte(); // Reserved
                     ConstantInterfaceMethodref c = (ConstantInterfaceMethodref) constant_pool
-                            .getConstant(m_index, CONSTANT_InterfaceMethodref);
+                            .getConstant(m_index, Constants.CONSTANT_InterfaceMethodref);
                     class_index = c.getClassIndex();
                     index = c.getNameAndTypeIndex();
                     name = Class2HTML.referenceClass(class_index);
-                } else if (opcode == INVOKEDYNAMIC) { // Special treatment needed
+                } else if (opcode == Constants.INVOKEDYNAMIC) { // Special treatment needed
                     bytes.readUnsignedByte(); // Reserved
                     bytes.readUnsignedByte(); // Reserved
                     ConstantInvokeDynamic c = (ConstantInvokeDynamic) constant_pool
-                            .getConstant(m_index, CONSTANT_InvokeDynamic);
+                            .getConstant(m_index, Constants.CONSTANT_InvokeDynamic);
                     index = c.getNameAndTypeIndex();
                     name = "#" + c.getBootstrapMethodAttrIndex();
                 } else {
@@ -276,17 +277,17 @@ final class CodeHTML implements org.apac
                     // reference EITHER a Methodref OR an InterfaceMethodref.
                     // Not sure if that affects this code or not.  (markro)
                     ConstantMethodref c = (ConstantMethodref) constant_pool.getConstant(m_index,
-                            CONSTANT_Methodref);
+                            Constants.CONSTANT_Methodref);
                     class_index = c.getClassIndex();
                     index = c.getNameAndTypeIndex();
                 name = Class2HTML.referenceClass(class_index);
                 }
                 str = Class2HTML.toHTML(constant_pool.constantToString(constant_pool.getConstant(
-                        index, CONSTANT_NameAndType)));
+                        index, Constants.CONSTANT_NameAndType)));
                 // Get signature, i.e., types
                 ConstantNameAndType c2 = (ConstantNameAndType) constant_pool.getConstant(index,
-                        CONSTANT_NameAndType);
-                signature = constant_pool.constantToString(c2.getSignatureIndex(), CONSTANT_Utf8);
+                        Constants.CONSTANT_NameAndType);
+                signature = constant_pool.constantToString(c2.getSignatureIndex(), Constants.CONSTANT_Utf8);
                 String[] args = Utility.methodSignatureArgumentTypes(signature, false);
                 String type = Utility.methodSignatureReturnType(signature, false);
                 buf.append(name).append(".<A HREF=\"").append(class_name).append("_cp.html#cp")
@@ -304,15 +305,15 @@ final class CodeHTML implements org.apac
                 break;
             /* Operands are references to items in constant pool
              */
-            case LDC_W:
-            case LDC2_W:
+            case Constants.LDC_W:
+            case Constants.LDC2_W:
                 index = bytes.readShort();
                 buf.append("<A HREF=\"").append(class_name).append("_cp.html#cp").append(index)
                         .append("\" TARGET=\"ConstantPool\">").append(
                                 Class2HTML.toHTML(constant_pool.constantToString(index,
                                         constant_pool.getConstant(index).getTag()))).append("</a>");
                 break;
-            case LDC:
+            case Constants.LDC:
                 index = bytes.readUnsignedByte();
                 buf.append("<A HREF=\"").append(class_name).append("_cp.html#cp").append(index)
                         .append("\" TARGET=\"ConstantPool\">").append(
@@ -321,13 +322,13 @@ final class CodeHTML implements org.apac
                 break;
             /* Array of references.
              */
-            case ANEWARRAY:
+            case Constants.ANEWARRAY:
                 index = bytes.readShort();
                 buf.append(constant_html.referenceConstant(index));
                 break;
             /* Multidimensional array of references.
              */
-            case MULTIANEWARRAY:
+            case Constants.MULTIANEWARRAY:
                 index = bytes.readShort();
                 int dimensions = bytes.readByte();
                 buf.append(constant_html.referenceConstant(index)).append(":").append(dimensions)
@@ -335,7 +336,7 @@ final class CodeHTML implements org.apac
                 break;
             /* Increment local variable.
              */
-            case IINC:
+            case Constants.IINC:
                 if (wide) {
                     vindex = bytes.readShort();
                     constant = bytes.readShort();
@@ -347,16 +348,16 @@ final class CodeHTML implements org.apac
                 buf.append("%").append(vindex).append(" ").append(constant);
                 break;
             default:
-                if (NO_OF_OPERANDS[opcode] > 0) {
-                    for (int i = 0; i < TYPE_OF_OPERANDS[opcode].length; i++) {
-                        switch (TYPE_OF_OPERANDS[opcode][i]) {
-                            case T_BYTE:
+                if (Constants.NO_OF_OPERANDS[opcode] > 0) {
+                    for (int i = 0; i < Constants.TYPE_OF_OPERANDS[opcode].length; i++) {
+                        switch (Constants.TYPE_OF_OPERANDS[opcode][i]) {
+                            case Constants.T_BYTE:
                                 buf.append(bytes.readUnsignedByte());
                                 break;
-                            case T_SHORT: // Either branch or index
+                            case Constants.T_SHORT: // Either branch or index
                                 buf.append(bytes.readShort());
                                 break;
-                            case T_INT:
+                            case Constants.T_INT:
                                 buf.append(bytes.readInt());
                                 break;
                             default: // Never reached
@@ -393,7 +394,7 @@ final class CodeHTML implements org.apac
             // Look for local variables and their range
             Attribute[] attributes = code.getAttributes();
             for (Attribute attribute : attributes) {
-                if (attribute.getTag() == ATTR_LOCAL_VARIABLE_TABLE) {
+                if (attribute.getTag() == Constants.ATTR_LOCAL_VARIABLE_TABLE) {
                     LocalVariable[] vars = ((LocalVariableTable) attribute)
                             .getLocalVariableTable();
                     for (LocalVariable var : vars) {
@@ -411,8 +412,8 @@ final class CodeHTML implements org.apac
             opcode = bytes.readUnsignedByte();
             //System.out.println(OPCODE_NAMES[opcode]);
             switch (opcode) {
-                case TABLESWITCH:
-                case LOOKUPSWITCH:
+                case Constants.TABLESWITCH:
+                case Constants.LOOKUPSWITCH:
                     //bytes.readByte(); // Skip already read byte
                     int remainder = bytes.getIndex() % 4;
                     int no_pad_bytes = (remainder == 0) ? 0 : 4 - remainder;
@@ -423,7 +424,7 @@ final class CodeHTML implements org.apac
                     }
                     // Both cases have a field default_offset in common
                     default_offset = bytes.readInt();
-                    if (opcode == TABLESWITCH) {
+                    if (opcode == Constants.TABLESWITCH) {
                         int low = bytes.readInt();
                         int high = bytes.readInt();
                         offset = bytes.getIndex() - 12 - no_pad_bytes - 1;
@@ -446,30 +447,30 @@ final class CodeHTML implements org.apac
                         }
                     }
                     break;
-                case GOTO:
-                case IFEQ:
-                case IFGE:
-                case IFGT:
-                case IFLE:
-                case IFLT:
-                case IFNE:
-                case IFNONNULL:
-                case IFNULL:
-                case IF_ACMPEQ:
-                case IF_ACMPNE:
-                case IF_ICMPEQ:
-                case IF_ICMPGE:
-                case IF_ICMPGT:
-                case IF_ICMPLE:
-                case IF_ICMPLT:
-                case IF_ICMPNE:
-                case JSR:
+                case Constants.GOTO:
+                case Constants.IFEQ:
+                case Constants.IFGE:
+                case Constants.IFGT:
+                case Constants.IFLE:
+                case Constants.IFLT:
+                case Constants.IFNE:
+                case Constants.IFNONNULL:
+                case Constants.IFNULL:
+                case Constants.IF_ACMPEQ:
+                case Constants.IF_ACMPNE:
+                case Constants.IF_ICMPEQ:
+                case Constants.IF_ICMPGE:
+                case Constants.IF_ICMPGT:
+                case Constants.IF_ICMPLE:
+                case Constants.IF_ICMPLT:
+                case Constants.IF_ICMPNE:
+                case Constants.JSR:
                     //bytes.readByte(); // Skip already read byte
                     index = bytes.getIndex() + bytes.readShort() - 1;
                     goto_set.set(index);
                     break;
-                case GOTO_W:
-                case JSR_W:
+                case Constants.GOTO_W:
+                case Constants.JSR_W:
                     //bytes.readByte(); // Skip already read byte
                     index = bytes.getIndex() + bytes.readInt() - 1;
                     goto_set.set(index);
@@ -517,14 +518,14 @@ final class CodeHTML implements org.apac
             file.print("<H4>Attributes</H4><UL>\n");
             for (int i = 0; i < attributes.length; i++) {
                 byte tag = attributes[i].getTag();
-                if (tag != ATTR_UNKNOWN) {
+                if (tag != Constants.ATTR_UNKNOWN) {
                     file.print("<LI><A HREF=\"" + class_name + "_attributes.html#method"
                             + method_number + "@" + i + "\" TARGET=Attributes>"
-                            + ATTRIBUTE_NAMES[tag] + "</A></LI>\n");
+                            + Constants.ATTRIBUTE_NAMES[tag] + "</A></LI>\n");
                 } else {
                     file.print("<LI>" + attributes[i] + "</LI>");
                 }
-                if (tag == ATTR_CODE) {
+                if (tag == Constants.ATTR_CODE) {
                     c = (Code) attributes[i];
                     Attribute[] attributes2 = c.getAttributes();
                     code = c.getCode();
@@ -533,7 +534,7 @@ final class CodeHTML implements org.apac
                         tag = attributes2[j].getTag();
                         file.print("<LI><A HREF=\"" + class_name + "_attributes.html#" + "method"
                                 + method_number + "@" + i + "@" + j + "\" TARGET=Attributes>"
-                                + ATTRIBUTE_NAMES[tag] + "</A></LI>\n");
+                                + Constants.ATTRIBUTE_NAMES[tag] + "</A></LI>\n");
                     }
                     file.print("</UL>");
                 }

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java Wed Aug 12 15:29:23 2015
@@ -21,6 +21,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
 
+import org.apache.commons.bcel6.Constants;
 import org.apache.commons.bcel6.classfile.Constant;
 import org.apache.commons.bcel6.classfile.ConstantClass;
 import org.apache.commons.bcel6.classfile.ConstantFieldref;
@@ -38,7 +39,7 @@ import org.apache.commons.bcel6.classfil
  * @version $Id$
  * 
  */
-final class ConstantHTML implements org.apache.commons.bcel6.Constants {
+final class ConstantHTML {
 
     private final String class_name; // name of current class
     private final String class_package; // name of package
@@ -87,39 +88,39 @@ final class ConstantHTML implements org.
         int class_index, name_index;
         String ref;
         // The header is always the same
-        file.println("<H4> <A NAME=cp" + index + ">" + index + "</A> " + CONSTANT_NAMES[tag]
+        file.println("<H4> <A NAME=cp" + index + ">" + index + "</A> " + Constants.CONSTANT_NAMES[tag]
                 + "</H4>");
         /* For every constant type get the needed parameters and print them appropiately 
          */
         switch (tag) {
-            case CONSTANT_InterfaceMethodref:
-            case CONSTANT_Methodref:
+            case Constants.CONSTANT_InterfaceMethodref:
+            case Constants.CONSTANT_Methodref:
                 // Get class_index and name_and_type_index, depending on type
-                if (tag == CONSTANT_Methodref) {
+                if (tag == Constants.CONSTANT_Methodref) {
                     ConstantMethodref c = (ConstantMethodref) constant_pool.getConstant(index,
-                            CONSTANT_Methodref);
+                            Constants.CONSTANT_Methodref);
                     class_index = c.getClassIndex();
                     name_index = c.getNameAndTypeIndex();
                 } else {
                     ConstantInterfaceMethodref c1 = (ConstantInterfaceMethodref) constant_pool
-                            .getConstant(index, CONSTANT_InterfaceMethodref);
+                            .getConstant(index, Constants.CONSTANT_InterfaceMethodref);
                     class_index = c1.getClassIndex();
                     name_index = c1.getNameAndTypeIndex();
                 }
                 // Get method name and its class
                 String method_name = constant_pool.constantToString(name_index,
-                        CONSTANT_NameAndType);
+                        Constants.CONSTANT_NameAndType);
                 String html_method_name = Class2HTML.toHTML(method_name);
                 // Partially compacted class name, i.e., / -> .
-                String method_class = constant_pool.constantToString(class_index, CONSTANT_Class);
+                String method_class = constant_pool.constantToString(class_index, Constants.CONSTANT_Class);
                 String short_method_class = Utility.compactClassName(method_class); // I.e., remove java.lang.
                 short_method_class = Utility.compactClassName(short_method_class, class_package
                         + ".", true); // Remove class package prefix
                 // Get method signature
                 ConstantNameAndType c2 = (ConstantNameAndType) constant_pool.getConstant(
-                        name_index, CONSTANT_NameAndType);
+                        name_index, Constants.CONSTANT_NameAndType);
                 String signature = constant_pool.constantToString(c2.getSignatureIndex(),
-                        CONSTANT_Utf8);
+                        Constants.CONSTANT_Utf8);
                 // Get array of strings containing the argument types
                 String[] args = Utility.methodSignatureArgumentTypes(signature, false);
                 // Get return type string
@@ -151,19 +152,19 @@ final class ConstantHTML implements org.
                         + "\">Class index(" + class_index + ")</A>\n" + "<LI><A HREF=\"#cp"
                         + name_index + "\">NameAndType index(" + name_index + ")</A></UL>");
                 break;
-            case CONSTANT_Fieldref:
+            case Constants.CONSTANT_Fieldref:
                 // Get class_index and name_and_type_index
                 ConstantFieldref c3 = (ConstantFieldref) constant_pool.getConstant(index,
-                        CONSTANT_Fieldref);
+                        Constants.CONSTANT_Fieldref);
                 class_index = c3.getClassIndex();
                 name_index = c3.getNameAndTypeIndex();
                 // Get method name and its class (compacted)
-                String field_class = constant_pool.constantToString(class_index, CONSTANT_Class);
+                String field_class = constant_pool.constantToString(class_index, Constants.CONSTANT_Class);
                 String short_field_class = Utility.compactClassName(field_class); // I.e., remove java.lang.
                 short_field_class = Utility.compactClassName(short_field_class,
                         class_package + ".", true); // Remove class package prefix
                 String field_name = constant_pool
-                        .constantToString(name_index, CONSTANT_NameAndType);
+                        .constantToString(name_index, Constants.CONSTANT_NameAndType);
                 if (field_class.equals(class_name)) {
                     ref = "<A HREF=\"" + field_class + "_methods.html#field" + field_name
                             + "\" TARGET=Methods>" + field_name + "</A>";
@@ -180,8 +181,8 @@ final class ConstantHTML implements org.
                         + "<LI><A HREF=\"#cp" + name_index + "\">NameAndType(" + name_index
                         + ")</A></UL>");
                 break;
-            case CONSTANT_Class:
-                ConstantClass c4 = (ConstantClass) constant_pool.getConstant(index, CONSTANT_Class);
+            case Constants.CONSTANT_Class:
+                ConstantClass c4 = (ConstantClass) constant_pool.getConstant(index, Constants.CONSTANT_Class);
                 name_index = c4.getNameIndex();
                 String class_name2 = constant_pool.constantToString(index, tag); // / -> .
                 String short_class_name = Utility.compactClassName(class_name2); // I.e., remove java.lang.
@@ -194,17 +195,17 @@ final class ConstantHTML implements org.
                 file.println("<P><TT>" + ref + "</TT><UL>" + "<LI><A HREF=\"#cp" + name_index
                         + "\">Name index(" + name_index + ")</A></UL>\n");
                 break;
-            case CONSTANT_String:
+            case Constants.CONSTANT_String:
                 ConstantString c5 = (ConstantString) constant_pool.getConstant(index,
-                        CONSTANT_String);
+                        Constants.CONSTANT_String);
                 name_index = c5.getStringIndex();
                 String str = Class2HTML.toHTML(constant_pool.constantToString(index, tag));
                 file.println("<P><TT>" + str + "</TT><UL>" + "<LI><A HREF=\"#cp" + name_index
                         + "\">Name index(" + name_index + ")</A></UL>\n");
                 break;
-            case CONSTANT_NameAndType:
+            case Constants.CONSTANT_NameAndType:
                 ConstantNameAndType c6 = (ConstantNameAndType) constant_pool.getConstant(index,
-                        CONSTANT_NameAndType);
+                        Constants.CONSTANT_NameAndType);
                 name_index = c6.getNameIndex();
                 int signature_index = c6.getSignatureIndex();
                 file.println("<P><TT>"

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java Wed Aug 12 15:29:23 2015
@@ -21,6 +21,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
 
+import org.apache.commons.bcel6.Constants;
 import org.apache.commons.bcel6.classfile.Attribute;
 import org.apache.commons.bcel6.classfile.Code;
 import org.apache.commons.bcel6.classfile.ConstantValue;
@@ -35,7 +36,7 @@ import org.apache.commons.bcel6.classfil
  * @version $Id$
  * 
  */
-final class MethodHTML implements org.apache.commons.bcel6.Constants {
+final class MethodHTML {
 
     private final String class_name; // name of current class
     private final PrintWriter file; // file to write to
@@ -88,7 +89,7 @@ final class MethodHTML implements org.ap
             attribute_html.writeAttribute(attributes[i], name + "@" + i);
         }
         for (int i = 0; i < attributes.length; i++) {
-            if (attributes[i].getTag() == ATTR_CONSTANT_VALUE) { // Default value
+            if (attributes[i].getTag() == Constants.ATTR_CONSTANT_VALUE) { // Default value
                 String str = ((ConstantValue) attributes[i]).toString();
                 // Reference attribute in _attributes.html
                 file.print("<TD>= <A HREF=\"" + class_name + "_attributes.html#" + name + "@" + i
@@ -135,7 +136,7 @@ final class MethodHTML implements org.ap
             attribute_html.writeAttribute(attributes[i], "method" + method_number + "@" + i,
                     method_number);
             byte tag = attributes[i].getTag();
-            if (tag == ATTR_EXCEPTIONS) {
+            if (tag == Constants.ATTR_EXCEPTIONS) {
                 file.print("<TR VALIGN=TOP><TD COLSPAN=2></TD><TH ALIGN=LEFT>throws</TH><TD>");
                 int[] exceptions = ((ExceptionTable) attributes[i]).getExceptionIndexTable();
                 for (int j = 0; j < exceptions.length; j++) {
@@ -145,7 +146,7 @@ final class MethodHTML implements org.ap
                     }
                 }
                 file.println("</TD></TR>");
-            } else if (tag == ATTR_CODE) {
+            } else if (tag == Constants.ATTR_CODE) {
                 Attribute[] c_a = ((Code) attributes[i]).getAttributes();
                 for (int j = 0; j < c_a.length; j++) {
                     attribute_html.writeAttribute(c_a[j], "method" + method_number + "@" + i + "@"

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java Wed Aug 12 15:29:23 2015
@@ -19,6 +19,7 @@ package org.apache.commons.bcel6.verifie
 
 
 import java.util.HashMap;
+
 import java.util.HashSet;
 import java.util.Locale;
 import java.util.Map;
@@ -82,7 +83,7 @@ import org.apache.commons.bcel6.verifier
  * @version $Id$
  * @see #do_verify()
  */
-public final class Pass2Verifier extends PassVerifier implements Constants{
+public final class Pass2Verifier extends PassVerifier {
 
     /**
      * The LocalVariableInfo instances used by Pass3bVerifier.
@@ -537,7 +538,7 @@ public final class Pass2Verifier extends
                 }
             }
 
-            if ((obj.getAccessFlags() & ~(ACC_PUBLIC|ACC_PRIVATE|ACC_PROTECTED|ACC_STATIC|ACC_FINAL|ACC_VOLATILE|ACC_TRANSIENT)) > 0){
+            if ((obj.getAccessFlags() & ~(Constants.ACC_PUBLIC|Constants.ACC_PRIVATE|Constants.ACC_PROTECTED|Constants.ACC_STATIC|Constants.ACC_FINAL|Constants.ACC_VOLATILE|Constants.ACC_TRANSIENT)) > 0){
                 addMessage("Field '"+tostring(obj)+"' has access flag(s) other than ACC_PUBLIC, ACC_PRIVATE, ACC_PROTECTED, ACC_STATIC, ACC_FINAL, ACC_VOLATILE, ACC_TRANSIENT set (ignored).");
             }
 
@@ -638,7 +639,7 @@ public final class Pass2Verifier extends
             }
 
             // Nearly forgot this! Funny return values are allowed, but a non-empty arguments list makes a different method out of it!
-            if (name.equals(STATIC_INITIALIZER_NAME) && (ts.length != 0)){
+            if (name.equals(Constants.STATIC_INITIALIZER_NAME) && (ts.length != 0)){
                 throw new ClassConstraintException("Method '"+tostring(obj)+"' has illegal name '"+name+"'. It's name resembles the class or interface initialization method which it isn't because of its arguments (==descriptor).");
             }
 
@@ -679,7 +680,7 @@ public final class Pass2Verifier extends
                 }
 
                 // A specific instance initialization method... (vmspec2,Page 116).
-                if (name.equals(CONSTRUCTOR_NAME)) {
+                if (name.equals(Constants.CONSTRUCTOR_NAME)) {
                     //..may have at most one of ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC set: is checked above.
                     //..may also have ACC_STRICT set, but none of the other flags in table 4.5 (vmspec2, page 115)
                     if (obj.isStatic() ||
@@ -692,8 +693,8 @@ public final class Pass2Verifier extends
                 }
             }
             else{ // isInterface!
-                if (!name.equals(STATIC_INITIALIZER_NAME)){//vmspec2, p.116, 2nd paragraph
-                    if (jc.getMajor() >= MAJOR_1_8) {
+                if (!name.equals(Constants.STATIC_INITIALIZER_NAME)){//vmspec2, p.116, 2nd paragraph
+                    if (jc.getMajor() >= Constants.MAJOR_1_8) {
                         if (!(obj.isPublic() ^ obj.isPrivate())) {
                             throw new ClassConstraintException("Interface method '" + tostring(obj) + "' must have exactly one of its ACC_PUBLIC and ACC_PRIVATE modifiers set.");
                         }
@@ -724,7 +725,7 @@ public final class Pass2Verifier extends
                 }
             }
 
-            if ((obj.getAccessFlags() & ~(ACC_PUBLIC|ACC_PRIVATE|ACC_PROTECTED|ACC_STATIC|ACC_FINAL|ACC_SYNCHRONIZED|ACC_NATIVE|ACC_ABSTRACT|ACC_STRICT)) > 0){
+            if ((obj.getAccessFlags() & ~(Constants.ACC_PUBLIC|Constants.ACC_PRIVATE|Constants.ACC_PROTECTED|Constants.ACC_STATIC|Constants.ACC_FINAL|Constants.ACC_SYNCHRONIZED|Constants.ACC_NATIVE|Constants.ACC_ABSTRACT|Constants.ACC_STRICT)) > 0){
                 addMessage("Method '"+tostring(obj)+"' has access flag(s) other than ACC_PUBLIC, ACC_PRIVATE, ACC_PROTECTED, ACC_STATIC, ACC_FINAL, ACC_SYNCHRONIZED, ACC_NATIVE, ACC_ABSTRACT, ACC_STRICT set (ignored).");
             }
 
@@ -827,7 +828,7 @@ public final class Pass2Verifier extends
                     checkIndex(obj, innername_idx, CONST_Utf8);
                 }
                 int acc = ic.getInnerAccessFlags();
-                acc = acc & (~ (ACC_PUBLIC | ACC_PRIVATE | ACC_PROTECTED | ACC_STATIC | ACC_FINAL | ACC_INTERFACE | ACC_ABSTRACT));
+                acc = acc & (~ (Constants.ACC_PUBLIC | Constants.ACC_PRIVATE | Constants.ACC_PROTECTED | Constants.ACC_STATIC | Constants.ACC_FINAL | Constants.ACC_INTERFACE | Constants.ACC_ABSTRACT));
                 if (acc != 0){
                     addMessage("Unknown access flag for inner class '"+tostring(ic)+"' set (InnerClasses attribute '"+tostring(obj)+"').");
                 }
@@ -1263,7 +1264,7 @@ public final class Pass2Verifier extends
 
             try{
                 Type   t  = Type.getReturnType(sig);
-                if ( name.equals(CONSTRUCTOR_NAME) && (t != Type.VOID) ){
+                if ( name.equals(Constants.CONSTRUCTOR_NAME) && (t != Type.VOID) ){
                     throw new ClassConstraintException("Instance initialization method must have VOID return type.");
                 }
             }
@@ -1295,8 +1296,8 @@ public final class Pass2Verifier extends
 
             try{
                 Type   t  = Type.getReturnType(sig);
-                if ( name.equals(STATIC_INITIALIZER_NAME) && (t != Type.VOID) ){
-                    addMessage("Class or interface initialization method '"+STATIC_INITIALIZER_NAME+"' usually has VOID return type instead of '"+t+"'. Note this is really not a requirement of The Java Virtual Machine Specification, Second Edition.");
+                if ( name.equals(Constants.STATIC_INITIALIZER_NAME) && (t != Type.VOID) ){
+                    addMessage("Class or interface initialization method '"+Constants.STATIC_INITIALIZER_NAME+"' usually has VOID return type instead of '"+t+"'. Note this is really not a requirement of The Java Virtual Machine Specification, Second Edition.");
                 }
             }
             catch (ClassFormatException cfe){
@@ -1332,10 +1333,10 @@ public final class Pass2Verifier extends
         }
 
         if (allowStaticInit){
-            return (name.equals(CONSTRUCTOR_NAME) || name.equals(STATIC_INITIALIZER_NAME));
+            return (name.equals(Constants.CONSTRUCTOR_NAME) || name.equals(Constants.STATIC_INITIALIZER_NAME));
         }
         else{
-            return name.equals(CONSTRUCTOR_NAME);
+            return name.equals(Constants.CONSTRUCTOR_NAME);
         }
     }
 

Modified: commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java (original)
+++ commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java Wed Aug 12 15:29:23 2015
@@ -29,7 +29,7 @@ import org.apache.commons.bcel6.generic.
  *
  * @version $Id$
  */
-public class UninitializedObjectType extends ReferenceType implements Constants{
+public class UninitializedObjectType extends ReferenceType{
 
     private static final long serialVersionUID = -1228341777713117641L;
     /** The "initialized" version. */
@@ -37,7 +37,7 @@ public class UninitializedObjectType ext
 
     /** Creates a new instance. */
     public UninitializedObjectType(ObjectType t){
-        super(T_UNKNOWN, "<UNINITIALIZED OBJECT OF TYPE '"+t.getClassName()+"'>");
+        super(Constants.T_UNKNOWN, "<UNINITIALIZED OBJECT OF TYPE '"+t.getClassName()+"'>");
         initialized = t;
     }
 

Modified: commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java (original)
+++ commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java Wed Aug 12 15:29:23 2015
@@ -33,13 +33,13 @@ import org.apache.commons.bcel6.generic.
 import org.apache.commons.bcel6.generic.Type;
 import org.junit.Assert;
 
-public class TestArrayAccess02Creator extends TestCreator implements Constants {
+public class TestArrayAccess02Creator extends TestCreator {
   private InstructionFactory _factory;
   private ConstantPoolGen    _cp;
   private ClassGen           _cg;
 
   public TestArrayAccess02Creator() {
-    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", "java.lang.Object", "TestArrayAccess02.java", ACC_PUBLIC | ACC_SUPER, new String[] {  });
+    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", "java.lang.Object", "TestArrayAccess02.java", Constants.ACC_PUBLIC | Constants.ACC_SUPER, new String[] {  });
 
     _cp = _cg.getConstantPool();
     _factory = new InstructionFactory(_cg, _cp);
@@ -53,7 +53,7 @@ public class TestArrayAccess02Creator ex
 
   private void createMethod_0() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", il, _cp);
 
     InstructionHandle ih_0 = il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
     Assert.assertNotNull(ih_0); // TODO why is this not used
@@ -68,7 +68,7 @@ public class TestArrayAccess02Creator ex
 
   private void createMethod_1() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC | Constants.ACC_STATIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", il, _cp);
 
     InstructionHandle ih_0 = il.append(new PUSH(_cp, 1));
     Assert.assertNotNull(ih_0); // TODO why is this not used

Modified: commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java (original)
+++ commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java Wed Aug 12 15:29:23 2015
@@ -33,13 +33,13 @@ import org.apache.commons.bcel6.generic.
 import org.apache.commons.bcel6.generic.Type;
 import org.junit.Assert;
 
-public class TestArrayAccess03Creator extends TestCreator implements Constants {
+public class TestArrayAccess03Creator extends TestCreator {
   private InstructionFactory _factory;
   private ConstantPoolGen    _cp;
   private ClassGen           _cg;
 
   public TestArrayAccess03Creator() {
-    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", "java.lang.Object", "TestArrayAccess03.java", ACC_PUBLIC | ACC_SUPER, new String[] {  });
+    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", "java.lang.Object", "TestArrayAccess03.java", Constants.ACC_PUBLIC | Constants.ACC_SUPER, new String[] {  });
 
     _cp = _cg.getConstantPool();
     _factory = new InstructionFactory(_cg, _cp);
@@ -53,7 +53,7 @@ public class TestArrayAccess03Creator ex
 
   private void createMethod_0() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", il, _cp);
 
     InstructionHandle ih_0 = il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
     Assert.assertNotNull(ih_0); // TODO why is this not used
@@ -68,7 +68,7 @@ public class TestArrayAccess03Creator ex
 
   private void createMethod_1() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC, Type.VOID, new Type[] { Type.OBJECT }, new String[] { "arg0" }, "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC | Constants.ACC_STATIC, Type.VOID, new Type[] { Type.OBJECT }, new String[] { "arg0" }, "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", il, _cp);
 
     InstructionHandle ih_0 = il.append(new PUSH(_cp, 1));
     Assert.assertNotNull(ih_0); // TODO why is this not used

Modified: commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java (original)
+++ commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java Wed Aug 12 15:29:23 2015
@@ -31,13 +31,13 @@ import org.apache.commons.bcel6.generic.
 import org.apache.commons.bcel6.generic.Type;
 import org.junit.Assert;
 
-public class TestArrayAccess04Creator extends TestCreator implements Constants {
+public class TestArrayAccess04Creator extends TestCreator {
   private InstructionFactory _factory;
   private ConstantPoolGen    _cp;
   private ClassGen           _cg;
 
   public TestArrayAccess04Creator() {
-    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", "java.lang.Object", "TestArrayAccess04.java", ACC_PUBLIC | ACC_SUPER, new String[] {  });
+    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", "java.lang.Object", "TestArrayAccess04.java", Constants.ACC_PUBLIC | Constants.ACC_SUPER, new String[] {  });
 
     _cp = _cg.getConstantPool();
     _factory = new InstructionFactory(_cg, _cp);
@@ -51,7 +51,7 @@ public class TestArrayAccess04Creator ex
 
   private void createMethod_0() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", il, _cp);
 
     InstructionHandle ih_0 = il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
     Assert.assertNotNull(ih_0); // TODO why is this not used
@@ -66,7 +66,7 @@ public class TestArrayAccess04Creator ex
 
   private void createMethod_1() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC, Type.VOID, new Type[] { Type.OBJECT }, new String[] { "arg0" }, "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC | Constants.ACC_STATIC, Type.VOID, new Type[] { Type.OBJECT }, new String[] { "arg0" }, "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", il, _cp);
 
     InstructionHandle ih_0 = il.append(new PUSH(_cp, 1));
     Assert.assertNotNull(ih_0); // TODO why is this not used

Modified: commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java (original)
+++ commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java Wed Aug 12 15:29:23 2015
@@ -31,13 +31,13 @@ import org.apache.commons.bcel6.generic.
 import org.apache.commons.bcel6.generic.Type;
 import org.junit.Assert;
 
-public class TestReturn01Creator extends TestCreator implements Constants {
+public class TestReturn01Creator extends TestCreator {
   private InstructionFactory _factory;
   private ConstantPoolGen    _cp;
   private ClassGen           _cg;
 
   public TestReturn01Creator() {
-    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn01", "java.lang.Object", "TestReturn01.java", ACC_PUBLIC | ACC_SUPER, new String[] {  });
+    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn01", "java.lang.Object", "TestReturn01.java", Constants.ACC_PUBLIC | Constants.ACC_SUPER, new String[] {  });
 
     _cp = _cg.getConstantPool();
     _factory = new InstructionFactory(_cg, _cp);
@@ -51,7 +51,7 @@ public class TestReturn01Creator extends
 
   private void createMethod_0() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestReturn01", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestReturn01", il, _cp);
 
     InstructionHandle ih_0 = il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
     Assert.assertNotNull(ih_0); // TODO why is this not used
@@ -66,7 +66,7 @@ public class TestReturn01Creator extends
 
   private void createMethod_1() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "foo", "org.apache.commons.bcel6.verifier.tests.TestReturn01", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC | Constants.ACC_STATIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "foo", "org.apache.commons.bcel6.verifier.tests.TestReturn01", il, _cp);
 
     InstructionHandle ih_0 = il.append(_factory.createNew("java.lang.Object"));
     Assert.assertNotNull(ih_0); // TODO why is this not used

Modified: commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java
URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
==============================================================================
--- commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java (original)
+++ commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java Wed Aug 12 15:29:23 2015
@@ -31,13 +31,13 @@ import org.apache.commons.bcel6.generic.
 import org.apache.commons.bcel6.generic.Type;
 import org.junit.Assert;
 
-public class TestReturn03Creator extends TestCreator implements Constants {
+public class TestReturn03Creator extends TestCreator {
   private InstructionFactory _factory;
   private ConstantPoolGen    _cp;
   private ClassGen           _cg;
 
   public TestReturn03Creator() {
-    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn03", "java.lang.Object", "TestReturn03.java", ACC_PUBLIC | ACC_SUPER, new String[] {  });
+    _cg = new ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn03", "java.lang.Object", "TestReturn03.java", Constants.ACC_PUBLIC | Constants.ACC_SUPER, new String[] {  });
 
     _cp = _cg.getConstantPool();
     _factory = new InstructionFactory(_cg, _cp);
@@ -51,7 +51,7 @@ public class TestReturn03Creator extends
 
   private void createMethod_0() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestReturn03", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID, Type.NO_ARGS, new String[] {  }, "<init>", "org.apache.commons.bcel6.verifier.tests.TestReturn03", il, _cp);
 
     InstructionHandle ih_0 = il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
     Assert.assertNotNull(ih_0); // TODO why is this not used
@@ -66,7 +66,7 @@ public class TestReturn03Creator extends
 
   private void createMethod_1() {
     InstructionList il = new InstructionList();
-    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC, Type.INT, Type.NO_ARGS, new String[] {  }, "test3", "org.apache.commons.bcel6.verifier.tests.TestReturn03", il, _cp);
+    MethodGen method = new MethodGen(Constants.ACC_PUBLIC | Constants.ACC_STATIC, Type.INT, Type.NO_ARGS, new String[] {  }, "test3", "org.apache.commons.bcel6.verifier.tests.TestReturn03", il, _cp);
 
     InstructionHandle ih_0 = il.append(InstructionConstants.ACONST_NULL);
     Assert.assertNotNull(ih_0); // TODO why is this not used



Re: svn commit: r1695556 - in /commons/proper/bcel/trunk/src: changes/ main/java/org/apache/commons/bcel6/ main/java/org/apache/commons/bcel6/classfile/ main/java/org/apache/commons/bcel6/util/ main/java/org/apache/commons/bcel6/verifier/statics/ main/java...

Posted by sebb <se...@gmail.com>.
On 12 August 2015 at 19:20, Dave Brosius <db...@apache.org> wrote:
> The Constants class is used by 3rdparty clients to access fields. I suppose
> this change is ok, given that they need to recompile anyway, but just
> mentioning it.

OK, thanks.

It's quite easy now that there are static imports.

Just replace

implements Constants

 with

"import static ...Constants.*';"

I did not do this for the BCEL code as it pollutes the namespace the
same way as using the interface.

> ---
> <br type="_moz" />
>
> On 2015-08-12 11:29, sebb@apache.org wrote:
>>
>> Author: sebb
>> Date: Wed Aug 12 15:29:23 2015
>> New Revision: 1695556
>>
>> URL: http://svn.apache.org/r1695556
>> Log:
>> BCEL-239 Interfaces should not be used to define constants
>>
>> Modified:
>>     commons/proper/bcel/trunk/src/changes/changes.xml
>>
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Re: svn commit: r1695556 - in /commons/proper/bcel/trunk/src: changes/ main/java/org/apache/commons/bcel6/ main/java/org/apache/commons/bcel6/classfile/ main/java/org/apache/commons/bcel6/util/ main/java/org/apache/commons/bcel6/verifier/statics/ main/java...

Posted by Dave Brosius <db...@apache.org>.
The Constants class is used by 3rdparty clients to access fields. I 
suppose this change is ok, given that they need to recompile anyway, but 
just mentioning it.

---
<br type="_moz" />

On 2015-08-12 11:29, sebb@apache.org wrote:
> Author: sebb
> Date: Wed Aug 12 15:29:23 2015
> New Revision: 1695556
> 
> URL: http://svn.apache.org/r1695556
> Log:
> BCEL-239 Interfaces should not be used to define constants
> 
> Modified:
>     commons/proper/bcel/trunk/src/changes/changes.xml
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java
> 
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java
> 
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java
> 
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java
> 
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java
> 
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java
> 
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java
> 
> Modified: commons/proper/bcel/trunk/src/changes/changes.xml
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/changes/changes.xml?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> --- commons/proper/bcel/trunk/src/changes/changes.xml (original)
> +++ commons/proper/bcel/trunk/src/changes/changes.xml Wed Aug 12 
> 15:29:23 2015
> @@ -63,6 +63,7 @@ The <action> type attribute can be add,u
> 
>    <body>
>      <release version="6.0" date="TBA" description="Major release with
> Java 7 and 8 support">
> +      <action issue="BCEL-239" type="fix">Interfaces should not be
> used to define constants</action>
>        <action issue="BCEL-235" type="fix">Remove unused 
> setters</action>
>        <action issue="BCEL-232" type="fix">Make mutable fields 
> private</action>
>        <action issue="BCEL-233" type="fix">The access_flags field in
> AccessFlags class should be final</action>
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/Constants.java Wed Aug 12 15:29:23 2015
> @@ -22,7 +22,7 @@ package org.apache.commons.bcel6;
>   *
>   * @version $Id$
>   */
> -public interface Constants {
> +public class Constants {
> 
>    /** Major version number of class files for Java 1.1.
>     *  @see #MINOR_1_1
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/AnnotationEntry.java Wed Aug 12 15:29:23 2015
> @@ -33,7 +33,7 @@ import org.apache.commons.bcel6.Constant
>   * @version $Id: AnnotationEntry
>   * @since 6.0
>   */
> -public class AnnotationEntry implements Node, Constants, Serializable 
> {
> +public class AnnotationEntry implements Node, Serializable {
> 
>      private static final long serialVersionUID = 1L;
> 
> @@ -43,7 +43,7 @@ public class AnnotationEntry implements
> 
>      private List<ElementValuePair> element_value_pairs;
> 
> -    /**
> +    /*
>       * Factory method to create an AnnotionEntry from a DataInput
>       *
>       * @param input
> @@ -96,7 +96,7 @@ public class AnnotationEntry implements
>       * @return the annotation type name
>       */
>      public String getAnnotationType() {
> -        final ConstantUtf8 c = (ConstantUtf8)
> constant_pool.getConstant(type_index, CONSTANT_Utf8);
> +        final ConstantUtf8 c = (ConstantUtf8)
> constant_pool.getConstant(type_index, Constants.CONSTANT_Utf8);
>          return c.getBytes();
>      }
> 
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/CodeException.java Wed Aug 12 15:29:23 2015
> @@ -32,7 +32,7 @@ import org.apache.commons.bcel6.Constant
>   * @version $Id$
>   * @see     Code
>   */
> -public final class CodeException implements Cloneable, Constants,
> Node, Serializable {
> +public final class CodeException implements Cloneable, Node, 
> Serializable {
> 
>      private static final long serialVersionUID = 2972500041254967221L;
>      private final int start_pc; // Range in the code the exception 
> handler is
> @@ -160,7 +160,7 @@ public final class CodeException impleme
>          if (catch_type == 0) {
>              str = "<Any exception>(0)";
>          } else {
> -            str =
> Utility.compactClassName(cp.getConstantString(catch_type,
> CONSTANT_Class), false)
> +            str =
> Utility.compactClassName(cp.getConstantString(catch_type,
> Constants.CONSTANT_Class), false)
>                      + (verbose ? "(" + catch_type + ")" : "");
>          }
>          return start_pc + "\t" + end_pc + "\t" + handler_pc + "\t" + 
> str;
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/LocalVariable.java Wed Aug 12 15:29:23 2015
> @@ -31,7 +31,7 @@ import org.apache.commons.bcel6.Constant
>   * @version $Id$
>   * @see     LocalVariableTable
>   */
> -public final class LocalVariable implements Constants, Cloneable,
> Node, Serializable {
> +public final class LocalVariable implements Cloneable, Node, 
> Serializable {
> 
>      private static final long serialVersionUID = -51081099265972179L;
>      private final int start_pc; // Range in which the variable is 
> valid
> @@ -132,7 +132,7 @@ public final class LocalVariable impleme
>       */
>      public final String getName() {
>          ConstantUtf8 c;
> -        c = (ConstantUtf8) constant_pool.getConstant(name_index,
> CONSTANT_Utf8);
> +        c = (ConstantUtf8) constant_pool.getConstant(name_index,
> Constants.CONSTANT_Utf8);
>          return c.getBytes();
>      }
> 
> @@ -150,7 +150,7 @@ public final class LocalVariable impleme
>       */
>      public final String getSignature() {
>          ConstantUtf8 c;
> -        c = (ConstantUtf8) constant_pool.getConstant(signature_index,
> CONSTANT_Utf8);
> +        c = (ConstantUtf8) constant_pool.getConstant(signature_index,
> Constants.CONSTANT_Utf8);
>          return c.getBytes();
>      }
> 
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/classfile/ParameterAnnotationEntry.java Wed Aug 12 15:29:23 2015
> @@ -24,15 +24,13 @@ import java.util.ArrayList;
>  import java.util.Collections;
>  import java.util.List;
> 
> -import org.apache.commons.bcel6.Constants;
> -
>  /**
>   * represents one parameter annotation in the parameter annotation 
> table
>   *
>   * @version $Id: ParameterAnnotationEntry
>   * @since 6.0
>   */
> -public class ParameterAnnotationEntry implements Node, Constants {
> +public class ParameterAnnotationEntry implements Node {
> 
>      private final AnnotationEntry[] annotation_table;
> 
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/AttributeHTML.java Wed Aug 12 15:29:23 2015
> @@ -21,6 +21,7 @@ import java.io.FileOutputStream;
>  import java.io.IOException;
>  import java.io.PrintWriter;
> 
> +import org.apache.commons.bcel6.Constants;
>  import org.apache.commons.bcel6.classfile.Attribute;
>  import org.apache.commons.bcel6.classfile.Code;
>  import org.apache.commons.bcel6.classfile.CodeException;
> @@ -43,7 +44,7 @@ import org.apache.commons.bcel6.classfil
>   * @version $Id$
>   *
>   */
> -final class AttributeHTML implements 
> org.apache.commons.bcel6.Constants {
> +final class AttributeHTML {
> 
>      private final String class_name; // name of current class
>      private final PrintWriter file; // file to write to
> @@ -82,7 +83,7 @@ final class AttributeHTML implements org
>      final void writeAttribute( Attribute attribute, String anchor,
> int method_number ) {
>          byte tag = attribute.getTag();
>          int index;
> -        if (tag == ATTR_UNKNOWN) {
> +        if (tag == Constants.ATTR_UNKNOWN) {
>              return;
>          }
>          attr_count++; // Increment number of attributes found so far
> @@ -91,12 +92,12 @@ final class AttributeHTML implements org
>          } else {
>              file.print("<TR BGCOLOR=\"#A0A0A0\"><TD>");
>          }
> -        file.println("<H4><A NAME=\"" + anchor + "\">" + attr_count +
> " " + ATTRIBUTE_NAMES[tag]
> +        file.println("<H4><A NAME=\"" + anchor + "\">" + attr_count +
> " " + Constants.ATTRIBUTE_NAMES[tag]
>                  + "</A></H4>");
>          /* Handle different attributes
>           */
>          switch (tag) {
> -            case ATTR_CODE:
> +            case Constants.ATTR_CODE:
>                  Code c = (Code) attribute;
>                  // Some directly printable values
>                  file.print("<UL><LI>Maximum stack size = " + 
> c.getMaxStack()
> @@ -124,20 +125,20 @@ final class AttributeHTML implements org
>                      file.print("</UL>");
>                  }
>                  break;
> -            case ATTR_CONSTANT_VALUE:
> +            case Constants.ATTR_CONSTANT_VALUE:
>                  index = ((ConstantValue) 
> attribute).getConstantValueIndex();
>                  // Reference _cp.html
>                  file.print("<UL><LI><A HREF=\"" + class_name +
> "_cp.html#cp" + index
>                          + "\" TARGET=\"ConstantPool\">Constant value
> index(" + index
>                          + ")</A></UL>\n");
>                  break;
> -            case ATTR_SOURCE_FILE:
> +            case Constants.ATTR_SOURCE_FILE:
>                  index = ((SourceFile) attribute).getSourceFileIndex();
>                  // Reference _cp.html
>                  file.print("<UL><LI><A HREF=\"" + class_name +
> "_cp.html#cp" + index
>                          + "\" TARGET=\"ConstantPool\">Source file
> index(" + index + ")</A></UL>\n");
>                  break;
> -            case ATTR_EXCEPTIONS:
> +            case Constants.ATTR_EXCEPTIONS:
>                  // List thrown exceptions
>                  int[] indices = ((ExceptionTable)
> attribute).getExceptionIndexTable();
>                  file.print("<UL>");
> @@ -148,7 +149,7 @@ final class AttributeHTML implements org
>                  }
>                  file.print("</UL>\n");
>                  break;
> -            case ATTR_LINE_NUMBER_TABLE:
> +            case Constants.ATTR_LINE_NUMBER_TABLE:
>                  LineNumber[] line_numbers = ((LineNumberTable)
> attribute).getLineNumberTable();
>                  // List line number pairs
>                  file.print("<P>");
> @@ -160,14 +161,14 @@ final class AttributeHTML implements org
>                      }
>                  }
>                  break;
> -            case ATTR_LOCAL_VARIABLE_TABLE:
> +            case Constants.ATTR_LOCAL_VARIABLE_TABLE:
>                  LocalVariable[] vars = ((LocalVariableTable)
> attribute).getLocalVariableTable();
>                  // List name, range and type
>                  file.print("<UL>");
>                  for (LocalVariable var : vars) {
>                      index = var.getSignatureIndex();
>                      String signature = ((ConstantUtf8)
> constant_pool.getConstant(index,
> -                            CONSTANT_Utf8)).getBytes();
> +                            Constants.CONSTANT_Utf8)).getBytes();
>                      signature = Utility.signatureToString(signature, 
> false);
>                      int start = var.getStartPC();
>                      int end = (start + var.getLength());
> @@ -180,7 +181,7 @@ final class AttributeHTML implements org
>                  }
>                  file.print("</UL>\n");
>                  break;
> -            case ATTR_INNER_CLASSES:
> +            case Constants.ATTR_INNER_CLASSES:
>                  InnerClass[] classes = ((InnerClasses)
> attribute).getInnerClasses();
>                  // List inner classes
>                  file.print("<UL>");
> @@ -188,7 +189,7 @@ final class AttributeHTML implements org
>                      String name, access;
>                      index = classe.getInnerNameIndex();
>                      if (index > 0) {
> -                        name = ((ConstantUtf8)
> constant_pool.getConstant(index, CONSTANT_Utf8))
> +                        name = ((ConstantUtf8)
> constant_pool.getConstant(index, Constants.CONSTANT_Utf8))
>                                  .getBytes();
>                      } else {
>                          name = "&lt;anonymous&gt;";
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/Class2HTML.java Wed Aug 12 15:29:23 2015
> @@ -51,7 +51,7 @@ import org.apache.commons.bcel6.classfil
>   *
>   * @version $Id$
>   */
> -public class Class2HTML implements Constants {
> +public class Class2HTML {
> 
>      private final JavaClass java_class; // current class object
>      private final String dir;
> @@ -150,7 +150,7 @@ public class Class2HTML implements Const
>       * i.e., an index to a string.
>       */
>      static String referenceClass( int index ) {
> -        String str = constant_pool.getConstantString(index, 
> CONSTANT_Class);
> +        String str = constant_pool.getConstantString(index,
> Constants.CONSTANT_Class);
>          str = Utility.compactClassName(str);
>          str = Utility.compactClassName(str, class_package + ".", 
> true);
>          return "<A HREF=\"" + class_name + "_cp.html#cp" + index +
> "\" TARGET=ConstantPool>" + str
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/CodeHTML.java Wed Aug 12 15:29:23 2015
> @@ -22,6 +22,7 @@ import java.io.IOException;
>  import java.io.PrintWriter;
>  import java.util.BitSet;
> 
> +import org.apache.commons.bcel6.Constants;
>  import org.apache.commons.bcel6.classfile.Attribute;
>  import org.apache.commons.bcel6.classfile.Code;
>  import org.apache.commons.bcel6.classfile.CodeException;
> @@ -42,7 +43,7 @@ import org.apache.commons.bcel6.classfil
>   * @version $Id$
>   *
>   */
> -final class CodeHTML implements org.apache.commons.bcel6.Constants {
> +final class CodeHTML {
> 
>      private final String class_name; // name of current class
>  //    private Method[] methods; // Methods to print
> @@ -85,11 +86,11 @@ final class CodeHTML implements org.apac
>          int[] jump_table;
>          int no_pad_bytes = 0, offset;
>          buf = new StringBuilder(256);
> -
> buf.append("<TT>").append(OPCODE_NAMES[opcode]).append("</TT></TD><TD>");
> +
> buf.append("<TT>").append(Constants.OPCODE_NAMES[opcode]).append("</TT></TD><TD>");
>          /* Special case: Skip (0-3) padding bytes, i.e., the
>           * following bytes are 4-byte-aligned
>           */
> -        if ((opcode == TABLESWITCH) || (opcode == LOOKUPSWITCH)) {
> +        if ((opcode == Constants.TABLESWITCH) || (opcode ==
> Constants.LOOKUPSWITCH)) {
>              int remainder = bytes.getIndex() % 4;
>              no_pad_bytes = (remainder == 0) ? 0 : 4 - remainder;
>              for (int i = 0; i < no_pad_bytes; i++) {
> @@ -99,7 +100,7 @@ final class CodeHTML implements org.apac
>              default_offset = bytes.readInt();
>          }
>          switch (opcode) {
> -            case TABLESWITCH:
> +            case Constants.TABLESWITCH:
>                  low = bytes.readInt();
>                  high = bytes.readInt();
>                  offset = bytes.getIndex() - 12 - no_pad_bytes - 1;
> @@ -123,7 +124,7 @@ final class CodeHTML implements org.apac
>                  break;
>              /* Lookup switch has variable length arguments.
>               */
> -            case LOOKUPSWITCH:
> +            case Constants.LOOKUPSWITCH:
>                  int npairs = bytes.readInt();
>                  offset = bytes.getIndex() - 8 - no_pad_bytes - 1;
>                  jump_table = new int[npairs];
> @@ -148,49 +149,49 @@ final class CodeHTML implements org.apac
>              /* Two address bytes + offset from start of byte stream 
> form the
>               * jump target.
>               */
> -            case GOTO:
> -            case IFEQ:
> -            case IFGE:
> -            case IFGT:
> -            case IFLE:
> -            case IFLT:
> -            case IFNE:
> -            case IFNONNULL:
> -            case IFNULL:
> -            case IF_ACMPEQ:
> -            case IF_ACMPNE:
> -            case IF_ICMPEQ:
> -            case IF_ICMPGE:
> -            case IF_ICMPGT:
> -            case IF_ICMPLE:
> -            case IF_ICMPLT:
> -            case IF_ICMPNE:
> -            case JSR:
> +            case Constants.GOTO:
> +            case Constants.IFEQ:
> +            case Constants.IFGE:
> +            case Constants.IFGT:
> +            case Constants.IFLE:
> +            case Constants.IFLT:
> +            case Constants.IFNE:
> +            case Constants.IFNONNULL:
> +            case Constants.IFNULL:
> +            case Constants.IF_ACMPEQ:
> +            case Constants.IF_ACMPNE:
> +            case Constants.IF_ICMPEQ:
> +            case Constants.IF_ICMPGE:
> +            case Constants.IF_ICMPGT:
> +            case Constants.IF_ICMPLE:
> +            case Constants.IF_ICMPLT:
> +            case Constants.IF_ICMPNE:
> +            case Constants.JSR:
>                  index = (bytes.getIndex() + bytes.readShort() - 1);
>                  buf.append("<A
> HREF=\"#code").append(method_number).append("@").append(index)
>                          .append("\">").append(index).append("</A>");
>                  break;
>              /* Same for 32-bit wide jumps
>               */
> -            case GOTO_W:
> -            case JSR_W:
> +            case Constants.GOTO_W:
> +            case Constants.JSR_W:
>                  int windex = bytes.getIndex() + bytes.readInt() - 1;
>                  buf.append("<A
> HREF=\"#code").append(method_number).append("@").append(windex)
>                          .append("\">").append(windex).append("</A>");
>                  break;
>              /* Index byte references local variable (register)
>               */
> -            case ALOAD:
> -            case ASTORE:
> -            case DLOAD:
> -            case DSTORE:
> -            case FLOAD:
> -            case FSTORE:
> -            case ILOAD:
> -            case ISTORE:
> -            case LLOAD:
> -            case LSTORE:
> -            case RET:
> +            case Constants.ALOAD:
> +            case Constants.ASTORE:
> +            case Constants.DLOAD:
> +            case Constants.DSTORE:
> +            case Constants.FLOAD:
> +            case Constants.FSTORE:
> +            case Constants.ILOAD:
> +            case Constants.ISTORE:
> +            case Constants.LLOAD:
> +            case Constants.LSTORE:
> +            case Constants.RET:
>                  if (wide) {
>                      vindex = bytes.readShort();
>                      wide = false; // Clear flag
> @@ -204,30 +205,30 @@ final class CodeHTML implements org.apac
>               * following instruction. Relies on that the method is
> called again with
>               * the following opcode.
>               */
> -            case WIDE:
> +            case Constants.WIDE:
>                  wide = true;
>                  buf.append("(wide)");
>                  break;
>              /* Array of basic type.
>               */
> -            case NEWARRAY:
> -                buf.append("<FONT
> COLOR=\"#00FF00\">").append(TYPE_NAMES[bytes.readByte()]).append(
> +            case Constants.NEWARRAY:
> +                buf.append("<FONT
> COLOR=\"#00FF00\">").append(Constants.TYPE_NAMES[bytes.readByte()]).append(
>                          "</FONT>");
>                  break;
>              /* Access object/class fields.
>               */
> -            case GETFIELD:
> -            case GETSTATIC:
> -            case PUTFIELD:
> -            case PUTSTATIC:
> +            case Constants.GETFIELD:
> +            case Constants.GETSTATIC:
> +            case Constants.PUTFIELD:
> +            case Constants.PUTSTATIC:
>                  index = bytes.readShort();
>                  ConstantFieldref c1 = (ConstantFieldref)
> constant_pool.getConstant(index,
> -                        CONSTANT_Fieldref);
> +                        Constants.CONSTANT_Fieldref);
>                  class_index = c1.getClassIndex();
> -                name = constant_pool.getConstantString(class_index,
> CONSTANT_Class);
> +                name = constant_pool.getConstantString(class_index,
> Constants.CONSTANT_Class);
>                  name = Utility.compactClassName(name, false);
>                  index = c1.getNameAndTypeIndex();
> -                String field_name =
> constant_pool.constantToString(index, CONSTANT_NameAndType);
> +                String field_name =
> constant_pool.constantToString(index, Constants.CONSTANT_NameAndType);
>                  if (name.equals(class_name)) { // Local field
>                      buf.append("<A
> HREF=\"").append(class_name).append("_methods.html#field")
>                              .append(field_name).append("\"
> TARGET=Methods>").append(field_name)
> @@ -239,36 +240,36 @@ final class CodeHTML implements org.apac
>                  break;
>              /* Operands are references to classes in constant pool
>               */
> -            case CHECKCAST:
> -            case INSTANCEOF:
> -            case NEW:
> +            case Constants.CHECKCAST:
> +            case Constants.INSTANCEOF:
> +            case Constants.NEW:
>                  index = bytes.readShort();
>                  buf.append(constant_html.referenceConstant(index));
>                  break;
>              /* Operands are references to methods in constant pool
>               */
> -            case INVOKESPECIAL:
> -            case INVOKESTATIC:
> -            case INVOKEVIRTUAL:
> -            case INVOKEINTERFACE:
> -            case INVOKEDYNAMIC:
> +            case Constants.INVOKESPECIAL:
> +            case Constants.INVOKESTATIC:
> +            case Constants.INVOKEVIRTUAL:
> +            case Constants.INVOKEINTERFACE:
> +            case Constants.INVOKEDYNAMIC:
>                  int m_index = bytes.readShort();
>                  String str;
> -                if (opcode == INVOKEINTERFACE) { // Special treatment 
> needed
> +                if (opcode == Constants.INVOKEINTERFACE) { // Special
> treatment needed
>                      bytes.readUnsignedByte(); // Redundant
>                      bytes.readUnsignedByte(); // Reserved
>  //                    int nargs = bytes.readUnsignedByte(); // 
> Redundant
>  //                    int reserved = bytes.readUnsignedByte(); // 
> Reserved
>                      ConstantInterfaceMethodref c =
> (ConstantInterfaceMethodref) constant_pool
> -                            .getConstant(m_index, 
> CONSTANT_InterfaceMethodref);
> +                            .getConstant(m_index,
> Constants.CONSTANT_InterfaceMethodref);
>                      class_index = c.getClassIndex();
>                      index = c.getNameAndTypeIndex();
>                      name = Class2HTML.referenceClass(class_index);
> -                } else if (opcode == INVOKEDYNAMIC) { // Special
> treatment needed
> +                } else if (opcode == Constants.INVOKEDYNAMIC) { //
> Special treatment needed
>                      bytes.readUnsignedByte(); // Reserved
>                      bytes.readUnsignedByte(); // Reserved
>                      ConstantInvokeDynamic c = (ConstantInvokeDynamic)
> constant_pool
> -                            .getConstant(m_index, 
> CONSTANT_InvokeDynamic);
> +                            .getConstant(m_index,
> Constants.CONSTANT_InvokeDynamic);
>                      index = c.getNameAndTypeIndex();
>                      name = "#" + c.getBootstrapMethodAttrIndex();
>                  } else {
> @@ -276,17 +277,17 @@ final class CodeHTML implements org.apac
>                      // reference EITHER a Methodref OR an 
> InterfaceMethodref.
>                      // Not sure if that affects this code or not.  
> (markro)
>                      ConstantMethodref c = (ConstantMethodref)
> constant_pool.getConstant(m_index,
> -                            CONSTANT_Methodref);
> +                            Constants.CONSTANT_Methodref);
>                      class_index = c.getClassIndex();
>                      index = c.getNameAndTypeIndex();
>                  name = Class2HTML.referenceClass(class_index);
>                  }
>                  str =
> Class2HTML.toHTML(constant_pool.constantToString(constant_pool.getConstant(
> -                        index, CONSTANT_NameAndType)));
> +                        index, Constants.CONSTANT_NameAndType)));
>                  // Get signature, i.e., types
>                  ConstantNameAndType c2 = (ConstantNameAndType)
> constant_pool.getConstant(index,
> -                        CONSTANT_NameAndType);
> -                signature =
> constant_pool.constantToString(c2.getSignatureIndex(), CONSTANT_Utf8);
> +                        Constants.CONSTANT_NameAndType);
> +                signature =
> constant_pool.constantToString(c2.getSignatureIndex(),
> Constants.CONSTANT_Utf8);
>                  String[] args =
> Utility.methodSignatureArgumentTypes(signature, false);
>                  String type =
> Utility.methodSignatureReturnType(signature, false);
>                  buf.append(name).append(".<A
> HREF=\"").append(class_name).append("_cp.html#cp")
> @@ -304,15 +305,15 @@ final class CodeHTML implements org.apac
>                  break;
>              /* Operands are references to items in constant pool
>               */
> -            case LDC_W:
> -            case LDC2_W:
> +            case Constants.LDC_W:
> +            case Constants.LDC2_W:
>                  index = bytes.readShort();
>                  buf.append("<A
> HREF=\"").append(class_name).append("_cp.html#cp").append(index)
>                          .append("\" TARGET=\"ConstantPool\">").append(
> 
> Class2HTML.toHTML(constant_pool.constantToString(index,
> 
> constant_pool.getConstant(index).getTag()))).append("</a>");
>                  break;
> -            case LDC:
> +            case Constants.LDC:
>                  index = bytes.readUnsignedByte();
>                  buf.append("<A
> HREF=\"").append(class_name).append("_cp.html#cp").append(index)
>                          .append("\" TARGET=\"ConstantPool\">").append(
> @@ -321,13 +322,13 @@ final class CodeHTML implements org.apac
>                  break;
>              /* Array of references.
>               */
> -            case ANEWARRAY:
> +            case Constants.ANEWARRAY:
>                  index = bytes.readShort();
>                  buf.append(constant_html.referenceConstant(index));
>                  break;
>              /* Multidimensional array of references.
>               */
> -            case MULTIANEWARRAY:
> +            case Constants.MULTIANEWARRAY:
>                  index = bytes.readShort();
>                  int dimensions = bytes.readByte();
> 
> buf.append(constant_html.referenceConstant(index)).append(":").append(dimensions)
> @@ -335,7 +336,7 @@ final class CodeHTML implements org.apac
>                  break;
>              /* Increment local variable.
>               */
> -            case IINC:
> +            case Constants.IINC:
>                  if (wide) {
>                      vindex = bytes.readShort();
>                      constant = bytes.readShort();
> @@ -347,16 +348,16 @@ final class CodeHTML implements org.apac
>                  buf.append("%").append(vindex).append(" 
> ").append(constant);
>                  break;
>              default:
> -                if (NO_OF_OPERANDS[opcode] > 0) {
> -                    for (int i = 0; i < 
> TYPE_OF_OPERANDS[opcode].length; i++) {
> -                        switch (TYPE_OF_OPERANDS[opcode][i]) {
> -                            case T_BYTE:
> +                if (Constants.NO_OF_OPERANDS[opcode] > 0) {
> +                    for (int i = 0; i <
> Constants.TYPE_OF_OPERANDS[opcode].length; i++) {
> +                        switch (Constants.TYPE_OF_OPERANDS[opcode][i]) 
> {
> +                            case Constants.T_BYTE:
>                                  buf.append(bytes.readUnsignedByte());
>                                  break;
> -                            case T_SHORT: // Either branch or index
> +                            case Constants.T_SHORT: // Either branch 
> or index
>                                  buf.append(bytes.readShort());
>                                  break;
> -                            case T_INT:
> +                            case Constants.T_INT:
>                                  buf.append(bytes.readInt());
>                                  break;
>                              default: // Never reached
> @@ -393,7 +394,7 @@ final class CodeHTML implements org.apac
>              // Look for local variables and their range
>              Attribute[] attributes = code.getAttributes();
>              for (Attribute attribute : attributes) {
> -                if (attribute.getTag() == ATTR_LOCAL_VARIABLE_TABLE) {
> +                if (attribute.getTag() ==
> Constants.ATTR_LOCAL_VARIABLE_TABLE) {
>                      LocalVariable[] vars = ((LocalVariableTable) 
> attribute)
>                              .getLocalVariableTable();
>                      for (LocalVariable var : vars) {
> @@ -411,8 +412,8 @@ final class CodeHTML implements org.apac
>              opcode = bytes.readUnsignedByte();
>              //System.out.println(OPCODE_NAMES[opcode]);
>              switch (opcode) {
> -                case TABLESWITCH:
> -                case LOOKUPSWITCH:
> +                case Constants.TABLESWITCH:
> +                case Constants.LOOKUPSWITCH:
>                      //bytes.readByte(); // Skip already read byte
>                      int remainder = bytes.getIndex() % 4;
>                      int no_pad_bytes = (remainder == 0) ? 0 : 4 - 
> remainder;
> @@ -423,7 +424,7 @@ final class CodeHTML implements org.apac
>                      }
>                      // Both cases have a field default_offset in 
> common
>                      default_offset = bytes.readInt();
> -                    if (opcode == TABLESWITCH) {
> +                    if (opcode == Constants.TABLESWITCH) {
>                          int low = bytes.readInt();
>                          int high = bytes.readInt();
>                          offset = bytes.getIndex() - 12 - no_pad_bytes 
> - 1;
> @@ -446,30 +447,30 @@ final class CodeHTML implements org.apac
>                          }
>                      }
>                      break;
> -                case GOTO:
> -                case IFEQ:
> -                case IFGE:
> -                case IFGT:
> -                case IFLE:
> -                case IFLT:
> -                case IFNE:
> -                case IFNONNULL:
> -                case IFNULL:
> -                case IF_ACMPEQ:
> -                case IF_ACMPNE:
> -                case IF_ICMPEQ:
> -                case IF_ICMPGE:
> -                case IF_ICMPGT:
> -                case IF_ICMPLE:
> -                case IF_ICMPLT:
> -                case IF_ICMPNE:
> -                case JSR:
> +                case Constants.GOTO:
> +                case Constants.IFEQ:
> +                case Constants.IFGE:
> +                case Constants.IFGT:
> +                case Constants.IFLE:
> +                case Constants.IFLT:
> +                case Constants.IFNE:
> +                case Constants.IFNONNULL:
> +                case Constants.IFNULL:
> +                case Constants.IF_ACMPEQ:
> +                case Constants.IF_ACMPNE:
> +                case Constants.IF_ICMPEQ:
> +                case Constants.IF_ICMPGE:
> +                case Constants.IF_ICMPGT:
> +                case Constants.IF_ICMPLE:
> +                case Constants.IF_ICMPLT:
> +                case Constants.IF_ICMPNE:
> +                case Constants.JSR:
>                      //bytes.readByte(); // Skip already read byte
>                      index = bytes.getIndex() + bytes.readShort() - 1;
>                      goto_set.set(index);
>                      break;
> -                case GOTO_W:
> -                case JSR_W:
> +                case Constants.GOTO_W:
> +                case Constants.JSR_W:
>                      //bytes.readByte(); // Skip already read byte
>                      index = bytes.getIndex() + bytes.readInt() - 1;
>                      goto_set.set(index);
> @@ -517,14 +518,14 @@ final class CodeHTML implements org.apac
>              file.print("<H4>Attributes</H4><UL>\n");
>              for (int i = 0; i < attributes.length; i++) {
>                  byte tag = attributes[i].getTag();
> -                if (tag != ATTR_UNKNOWN) {
> +                if (tag != Constants.ATTR_UNKNOWN) {
>                      file.print("<LI><A HREF=\"" + class_name +
> "_attributes.html#method"
>                              + method_number + "@" + i + "\" 
> TARGET=Attributes>"
> -                            + ATTRIBUTE_NAMES[tag] + "</A></LI>\n");
> +                            + Constants.ATTRIBUTE_NAMES[tag] + 
> "</A></LI>\n");
>                  } else {
>                      file.print("<LI>" + attributes[i] + "</LI>");
>                  }
> -                if (tag == ATTR_CODE) {
> +                if (tag == Constants.ATTR_CODE) {
>                      c = (Code) attributes[i];
>                      Attribute[] attributes2 = c.getAttributes();
>                      code = c.getCode();
> @@ -533,7 +534,7 @@ final class CodeHTML implements org.apac
>                          tag = attributes2[j].getTag();
>                          file.print("<LI><A HREF=\"" + class_name +
> "_attributes.html#" + "method"
>                                  + method_number + "@" + i + "@" + j +
> "\" TARGET=Attributes>"
> -                                + ATTRIBUTE_NAMES[tag] + 
> "</A></LI>\n");
> +                                + Constants.ATTRIBUTE_NAMES[tag] +
> "</A></LI>\n");
>                      }
>                      file.print("</UL>");
>                  }
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/ConstantHTML.java Wed Aug 12 15:29:23 2015
> @@ -21,6 +21,7 @@ import java.io.FileOutputStream;
>  import java.io.IOException;
>  import java.io.PrintWriter;
> 
> +import org.apache.commons.bcel6.Constants;
>  import org.apache.commons.bcel6.classfile.Constant;
>  import org.apache.commons.bcel6.classfile.ConstantClass;
>  import org.apache.commons.bcel6.classfile.ConstantFieldref;
> @@ -38,7 +39,7 @@ import org.apache.commons.bcel6.classfil
>   * @version $Id$
>   *
>   */
> -final class ConstantHTML implements org.apache.commons.bcel6.Constants 
> {
> +final class ConstantHTML {
> 
>      private final String class_name; // name of current class
>      private final String class_package; // name of package
> @@ -87,39 +88,39 @@ final class ConstantHTML implements org.
>          int class_index, name_index;
>          String ref;
>          // The header is always the same
> -        file.println("<H4> <A NAME=cp" + index + ">" + index + "</A>
> " + CONSTANT_NAMES[tag]
> +        file.println("<H4> <A NAME=cp" + index + ">" + index + "</A>
> " + Constants.CONSTANT_NAMES[tag]
>                  + "</H4>");
>          /* For every constant type get the needed parameters and
> print them appropiately
>           */
>          switch (tag) {
> -            case CONSTANT_InterfaceMethodref:
> -            case CONSTANT_Methodref:
> +            case Constants.CONSTANT_InterfaceMethodref:
> +            case Constants.CONSTANT_Methodref:
>                  // Get class_index and name_and_type_index, depending 
> on type
> -                if (tag == CONSTANT_Methodref) {
> +                if (tag == Constants.CONSTANT_Methodref) {
>                      ConstantMethodref c = (ConstantMethodref)
> constant_pool.getConstant(index,
> -                            CONSTANT_Methodref);
> +                            Constants.CONSTANT_Methodref);
>                      class_index = c.getClassIndex();
>                      name_index = c.getNameAndTypeIndex();
>                  } else {
>                      ConstantInterfaceMethodref c1 =
> (ConstantInterfaceMethodref) constant_pool
> -                            .getConstant(index, 
> CONSTANT_InterfaceMethodref);
> +                            .getConstant(index,
> Constants.CONSTANT_InterfaceMethodref);
>                      class_index = c1.getClassIndex();
>                      name_index = c1.getNameAndTypeIndex();
>                  }
>                  // Get method name and its class
>                  String method_name = 
> constant_pool.constantToString(name_index,
> -                        CONSTANT_NameAndType);
> +                        Constants.CONSTANT_NameAndType);
>                  String html_method_name = 
> Class2HTML.toHTML(method_name);
>                  // Partially compacted class name, i.e., / -> .
> -                String method_class =
> constant_pool.constantToString(class_index, CONSTANT_Class);
> +                String method_class =
> constant_pool.constantToString(class_index, Constants.CONSTANT_Class);
>                  String short_method_class =
> Utility.compactClassName(method_class); // I.e., remove java.lang.
>                  short_method_class =
> Utility.compactClassName(short_method_class, class_package
>                          + ".", true); // Remove class package prefix
>                  // Get method signature
>                  ConstantNameAndType c2 = (ConstantNameAndType)
> constant_pool.getConstant(
> -                        name_index, CONSTANT_NameAndType);
> +                        name_index, Constants.CONSTANT_NameAndType);
>                  String signature =
> constant_pool.constantToString(c2.getSignatureIndex(),
> -                        CONSTANT_Utf8);
> +                        Constants.CONSTANT_Utf8);
>                  // Get array of strings containing the argument types
>                  String[] args =
> Utility.methodSignatureArgumentTypes(signature, false);
>                  // Get return type string
> @@ -151,19 +152,19 @@ final class ConstantHTML implements org.
>                          + "\">Class index(" + class_index + ")</A>\n"
> + "<LI><A HREF=\"#cp"
>                          + name_index + "\">NameAndType index(" +
> name_index + ")</A></UL>");
>                  break;
> -            case CONSTANT_Fieldref:
> +            case Constants.CONSTANT_Fieldref:
>                  // Get class_index and name_and_type_index
>                  ConstantFieldref c3 = (ConstantFieldref)
> constant_pool.getConstant(index,
> -                        CONSTANT_Fieldref);
> +                        Constants.CONSTANT_Fieldref);
>                  class_index = c3.getClassIndex();
>                  name_index = c3.getNameAndTypeIndex();
>                  // Get method name and its class (compacted)
> -                String field_class =
> constant_pool.constantToString(class_index, CONSTANT_Class);
> +                String field_class =
> constant_pool.constantToString(class_index, Constants.CONSTANT_Class);
>                  String short_field_class =
> Utility.compactClassName(field_class); // I.e., remove java.lang.
>                  short_field_class = 
> Utility.compactClassName(short_field_class,
>                          class_package + ".", true); // Remove class
> package prefix
>                  String field_name = constant_pool
> -                        .constantToString(name_index, 
> CONSTANT_NameAndType);
> +                        .constantToString(name_index,
> Constants.CONSTANT_NameAndType);
>                  if (field_class.equals(class_name)) {
>                      ref = "<A HREF=\"" + field_class +
> "_methods.html#field" + field_name
>                              + "\" TARGET=Methods>" + field_name + 
> "</A>";
> @@ -180,8 +181,8 @@ final class ConstantHTML implements org.
>                          + "<LI><A HREF=\"#cp" + name_index +
> "\">NameAndType(" + name_index
>                          + ")</A></UL>");
>                  break;
> -            case CONSTANT_Class:
> -                ConstantClass c4 = (ConstantClass)
> constant_pool.getConstant(index, CONSTANT_Class);
> +            case Constants.CONSTANT_Class:
> +                ConstantClass c4 = (ConstantClass)
> constant_pool.getConstant(index, Constants.CONSTANT_Class);
>                  name_index = c4.getNameIndex();
>                  String class_name2 =
> constant_pool.constantToString(index, tag); // / -> .
>                  String short_class_name =
> Utility.compactClassName(class_name2); // I.e., remove java.lang.
> @@ -194,17 +195,17 @@ final class ConstantHTML implements org.
>                  file.println("<P><TT>" + ref + "</TT><UL>" + "<LI><A
> HREF=\"#cp" + name_index
>                          + "\">Name index(" + name_index + 
> ")</A></UL>\n");
>                  break;
> -            case CONSTANT_String:
> +            case Constants.CONSTANT_String:
>                  ConstantString c5 = (ConstantString)
> constant_pool.getConstant(index,
> -                        CONSTANT_String);
> +                        Constants.CONSTANT_String);
>                  name_index = c5.getStringIndex();
>                  String str =
> Class2HTML.toHTML(constant_pool.constantToString(index, tag));
>                  file.println("<P><TT>" + str + "</TT><UL>" + "<LI><A
> HREF=\"#cp" + name_index
>                          + "\">Name index(" + name_index + 
> ")</A></UL>\n");
>                  break;
> -            case CONSTANT_NameAndType:
> +            case Constants.CONSTANT_NameAndType:
>                  ConstantNameAndType c6 = (ConstantNameAndType)
> constant_pool.getConstant(index,
> -                        CONSTANT_NameAndType);
> +                        Constants.CONSTANT_NameAndType);
>                  name_index = c6.getNameIndex();
>                  int signature_index = c6.getSignatureIndex();
>                  file.println("<P><TT>"
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/util/MethodHTML.java Wed Aug 12 15:29:23 2015
> @@ -21,6 +21,7 @@ import java.io.FileOutputStream;
>  import java.io.IOException;
>  import java.io.PrintWriter;
> 
> +import org.apache.commons.bcel6.Constants;
>  import org.apache.commons.bcel6.classfile.Attribute;
>  import org.apache.commons.bcel6.classfile.Code;
>  import org.apache.commons.bcel6.classfile.ConstantValue;
> @@ -35,7 +36,7 @@ import org.apache.commons.bcel6.classfil
>   * @version $Id$
>   *
>   */
> -final class MethodHTML implements org.apache.commons.bcel6.Constants {
> +final class MethodHTML {
> 
>      private final String class_name; // name of current class
>      private final PrintWriter file; // file to write to
> @@ -88,7 +89,7 @@ final class MethodHTML implements org.ap
>              attribute_html.writeAttribute(attributes[i], name + "@" + 
> i);
>          }
>          for (int i = 0; i < attributes.length; i++) {
> -            if (attributes[i].getTag() == ATTR_CONSTANT_VALUE) { //
> Default value
> +            if (attributes[i].getTag() ==
> Constants.ATTR_CONSTANT_VALUE) { // Default value
>                  String str = ((ConstantValue) 
> attributes[i]).toString();
>                  // Reference attribute in _attributes.html
>                  file.print("<TD>= <A HREF=\"" + class_name +
> "_attributes.html#" + name + "@" + i
> @@ -135,7 +136,7 @@ final class MethodHTML implements org.ap
>              attribute_html.writeAttribute(attributes[i], "method" +
> method_number + "@" + i,
>                      method_number);
>              byte tag = attributes[i].getTag();
> -            if (tag == ATTR_EXCEPTIONS) {
> +            if (tag == Constants.ATTR_EXCEPTIONS) {
>                  file.print("<TR VALIGN=TOP><TD COLSPAN=2></TD><TH
> ALIGN=LEFT>throws</TH><TD>");
>                  int[] exceptions = ((ExceptionTable)
> attributes[i]).getExceptionIndexTable();
>                  for (int j = 0; j < exceptions.length; j++) {
> @@ -145,7 +146,7 @@ final class MethodHTML implements org.ap
>                      }
>                  }
>                  file.println("</TD></TR>");
> -            } else if (tag == ATTR_CODE) {
> +            } else if (tag == Constants.ATTR_CODE) {
>                  Attribute[] c_a = ((Code) 
> attributes[i]).getAttributes();
>                  for (int j = 0; j < c_a.length; j++) {
>                      attribute_html.writeAttribute(c_a[j], "method" +
> method_number + "@" + i + "@"
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/statics/Pass2Verifier.java Wed Aug 12 15:29:23 2015
> @@ -19,6 +19,7 @@ package org.apache.commons.bcel6.verifie
> 
> 
>  import java.util.HashMap;
> +
>  import java.util.HashSet;
>  import java.util.Locale;
>  import java.util.Map;
> @@ -82,7 +83,7 @@ import org.apache.commons.bcel6.verifier
>   * @version $Id$
>   * @see #do_verify()
>   */
> -public final class Pass2Verifier extends PassVerifier implements 
> Constants{
> +public final class Pass2Verifier extends PassVerifier {
> 
>      /**
>       * The LocalVariableInfo instances used by Pass3bVerifier.
> @@ -537,7 +538,7 @@ public final class Pass2Verifier extends
>                  }
>              }
> 
> -            if ((obj.getAccessFlags() &
> ~(ACC_PUBLIC|ACC_PRIVATE|ACC_PROTECTED|ACC_STATIC|ACC_FINAL|ACC_VOLATILE|ACC_TRANSIENT)) > 0){
> +            if ((obj.getAccessFlags() &
> ~(Constants.ACC_PUBLIC|Constants.ACC_PRIVATE|Constants.ACC_PROTECTED|Constants.ACC_STATIC|Constants.ACC_FINAL|Constants.ACC_VOLATILE|Constants.ACC_TRANSIENT)) > 0){
>                  addMessage("Field '"+tostring(obj)+"' has access
> flag(s) other than ACC_PUBLIC, ACC_PRIVATE, ACC_PROTECTED, ACC_STATIC,
> ACC_FINAL, ACC_VOLATILE, ACC_TRANSIENT set (ignored).");
>              }
> 
> @@ -638,7 +639,7 @@ public final class Pass2Verifier extends
>              }
> 
>              // Nearly forgot this! Funny return values are allowed,
> but a non-empty arguments list makes a different method out of it!
> -            if (name.equals(STATIC_INITIALIZER_NAME) && (ts.length != 
> 0)){
> +            if (name.equals(Constants.STATIC_INITIALIZER_NAME) &&
> (ts.length != 0)){
>                  throw new ClassConstraintException("Method
> '"+tostring(obj)+"' has illegal name '"+name+"'. It's name resembles
> the class or interface initialization method which it isn't because of
> its arguments (==descriptor).");
>              }
> 
> @@ -679,7 +680,7 @@ public final class Pass2Verifier extends
>                  }
> 
>                  // A specific instance initialization method...
> (vmspec2,Page 116).
> -                if (name.equals(CONSTRUCTOR_NAME)) {
> +                if (name.equals(Constants.CONSTRUCTOR_NAME)) {
>                      //..may have at most one of ACC_PRIVATE,
> ACC_PROTECTED, ACC_PUBLIC set: is checked above.
>                      //..may also have ACC_STRICT set, but none of the
> other flags in table 4.5 (vmspec2, page 115)
>                      if (obj.isStatic() ||
> @@ -692,8 +693,8 @@ public final class Pass2Verifier extends
>                  }
>              }
>              else{ // isInterface!
> -                if (!name.equals(STATIC_INITIALIZER_NAME)){//vmspec2,
> p.116, 2nd paragraph
> -                    if (jc.getMajor() >= MAJOR_1_8) {
> +                if
> (!name.equals(Constants.STATIC_INITIALIZER_NAME)){//vmspec2, p.116,
> 2nd paragraph
> +                    if (jc.getMajor() >= Constants.MAJOR_1_8) {
>                          if (!(obj.isPublic() ^ obj.isPrivate())) {
>                              throw new
> ClassConstraintException("Interface method '" + tostring(obj) + "'
> must have exactly one of its ACC_PUBLIC and ACC_PRIVATE modifiers
> set.");
>                          }
> @@ -724,7 +725,7 @@ public final class Pass2Verifier extends
>                  }
>              }
> 
> -            if ((obj.getAccessFlags() &
> ~(ACC_PUBLIC|ACC_PRIVATE|ACC_PROTECTED|ACC_STATIC|ACC_FINAL|ACC_SYNCHRONIZED|ACC_NATIVE|ACC_ABSTRACT|ACC_STRICT)) > 0){
> +            if ((obj.getAccessFlags() &
> ~(Constants.ACC_PUBLIC|Constants.ACC_PRIVATE|Constants.ACC_PROTECTED|Constants.ACC_STATIC|Constants.ACC_FINAL|Constants.ACC_SYNCHRONIZED|Constants.ACC_NATIVE|Constants.ACC_ABSTRACT|Constants.ACC_STRICT)) > 0){
>                  addMessage("Method '"+tostring(obj)+"' has access
> flag(s) other than ACC_PUBLIC, ACC_PRIVATE, ACC_PROTECTED, ACC_STATIC,
> ACC_FINAL, ACC_SYNCHRONIZED, ACC_NATIVE, ACC_ABSTRACT, ACC_STRICT set
> (ignored).");
>              }
> 
> @@ -827,7 +828,7 @@ public final class Pass2Verifier extends
>                      checkIndex(obj, innername_idx, CONST_Utf8);
>                  }
>                  int acc = ic.getInnerAccessFlags();
> -                acc = acc & (~ (ACC_PUBLIC | ACC_PRIVATE |
> ACC_PROTECTED | ACC_STATIC | ACC_FINAL | ACC_INTERFACE |
> ACC_ABSTRACT));
> +                acc = acc & (~ (Constants.ACC_PUBLIC |
> Constants.ACC_PRIVATE | Constants.ACC_PROTECTED | Constants.ACC_STATIC
> | Constants.ACC_FINAL | Constants.ACC_INTERFACE |
> Constants.ACC_ABSTRACT));
>                  if (acc != 0){
>                      addMessage("Unknown access flag for inner class
> '"+tostring(ic)+"' set (InnerClasses attribute
> '"+tostring(obj)+"').");
>                  }
> @@ -1263,7 +1264,7 @@ public final class Pass2Verifier extends
> 
>              try{
>                  Type   t  = Type.getReturnType(sig);
> -                if ( name.equals(CONSTRUCTOR_NAME) && (t != Type.VOID) 
> ){
> +                if ( name.equals(Constants.CONSTRUCTOR_NAME) && (t !=
> Type.VOID) ){
>                      throw new ClassConstraintException("Instance
> initialization method must have VOID return type.");
>                  }
>              }
> @@ -1295,8 +1296,8 @@ public final class Pass2Verifier extends
> 
>              try{
>                  Type   t  = Type.getReturnType(sig);
> -                if ( name.equals(STATIC_INITIALIZER_NAME) && (t !=
> Type.VOID) ){
> -                    addMessage("Class or interface initialization
> method '"+STATIC_INITIALIZER_NAME+"' usually has VOID return type
> instead of '"+t+"'. Note this is really not a requirement of The Java
> Virtual Machine Specification, Second Edition.");
> +                if ( name.equals(Constants.STATIC_INITIALIZER_NAME)
> && (t != Type.VOID) ){
> +                    addMessage("Class or interface initialization
> method '"+Constants.STATIC_INITIALIZER_NAME+"' usually has VOID return
> type instead of '"+t+"'. Note this is really not a requirement of The
> Java Virtual Machine Specification, Second Edition.");
>                  }
>              }
>              catch (ClassFormatException cfe){
> @@ -1332,10 +1333,10 @@ public final class Pass2Verifier extends
>          }
> 
>          if (allowStaticInit){
> -            return (name.equals(CONSTRUCTOR_NAME) ||
> name.equals(STATIC_INITIALIZER_NAME));
> +            return (name.equals(Constants.CONSTRUCTOR_NAME) ||
> name.equals(Constants.STATIC_INITIALIZER_NAME));
>          }
>          else{
> -            return name.equals(CONSTRUCTOR_NAME);
> +            return name.equals(Constants.CONSTRUCTOR_NAME);
>          }
>      }
> 
> 
> Modified:
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java (original)
> +++
> commons/proper/bcel/trunk/src/main/java/org/apache/commons/bcel6/verifier/structurals/UninitializedObjectType.java Wed Aug 12 15:29:23 2015
> @@ -29,7 +29,7 @@ import org.apache.commons.bcel6.generic.
>   *
>   * @version $Id$
>   */
> -public class UninitializedObjectType extends ReferenceType implements
> Constants{
> +public class UninitializedObjectType extends ReferenceType{
> 
>      private static final long serialVersionUID = 
> -1228341777713117641L;
>      /** The "initialized" version. */
> @@ -37,7 +37,7 @@ public class UninitializedObjectType ext
> 
>      /** Creates a new instance. */
>      public UninitializedObjectType(ObjectType t){
> -        super(T_UNKNOWN, "<UNINITIALIZED OBJECT OF TYPE
> '"+t.getClassName()+"'>");
> +        super(Constants.T_UNKNOWN, "<UNINITIALIZED OBJECT OF TYPE
> '"+t.getClassName()+"'>");
>          initialized = t;
>      }
> 
> 
> Modified:
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java (original)
> +++
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess02Creator.java Wed Aug 12 15:29:23 2015
> @@ -33,13 +33,13 @@ import org.apache.commons.bcel6.generic.
>  import org.apache.commons.bcel6.generic.Type;
>  import org.junit.Assert;
> 
> -public class TestArrayAccess02Creator extends TestCreator implements
> Constants {
> +public class TestArrayAccess02Creator extends TestCreator {
>    private InstructionFactory _factory;
>    private ConstantPoolGen    _cp;
>    private ClassGen           _cg;
> 
>    public TestArrayAccess02Creator() {
> -    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess02",
> "java.lang.Object", "TestArrayAccess02.java", ACC_PUBLIC | ACC_SUPER,
> new String[] {  });
> +    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess02",
> "java.lang.Object", "TestArrayAccess02.java", Constants.ACC_PUBLIC |
> Constants.ACC_SUPER, new String[] {  });
> 
>      _cp = _cg.getConstantPool();
>      _factory = new InstructionFactory(_cg, _cp);
> @@ -53,7 +53,7 @@ public class TestArrayAccess02Creator ex
> 
>    private void createMethod_0() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", il, _cp);
> 
>      InstructionHandle ih_0 =
> il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> @@ -68,7 +68,7 @@ public class TestArrayAccess02Creator ex
> 
>    private void createMethod_1() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC,
> Type.VOID, Type.NO_ARGS, new String[] {  }, "test",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC |
> Constants.ACC_STATIC, Type.VOID, Type.NO_ARGS, new String[] {  },
> "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess02",
> il, _cp);
> 
>      InstructionHandle ih_0 = il.append(new PUSH(_cp, 1));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> 
> Modified:
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java (original)
> +++
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess03Creator.java Wed Aug 12 15:29:23 2015
> @@ -33,13 +33,13 @@ import org.apache.commons.bcel6.generic.
>  import org.apache.commons.bcel6.generic.Type;
>  import org.junit.Assert;
> 
> -public class TestArrayAccess03Creator extends TestCreator implements
> Constants {
> +public class TestArrayAccess03Creator extends TestCreator {
>    private InstructionFactory _factory;
>    private ConstantPoolGen    _cp;
>    private ClassGen           _cg;
> 
>    public TestArrayAccess03Creator() {
> -    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess03",
> "java.lang.Object", "TestArrayAccess03.java", ACC_PUBLIC | ACC_SUPER,
> new String[] {  });
> +    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess03",
> "java.lang.Object", "TestArrayAccess03.java", Constants.ACC_PUBLIC |
> Constants.ACC_SUPER, new String[] {  });
> 
>      _cp = _cg.getConstantPool();
>      _factory = new InstructionFactory(_cg, _cp);
> @@ -53,7 +53,7 @@ public class TestArrayAccess03Creator ex
> 
>    private void createMethod_0() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", il, _cp);
> 
>      InstructionHandle ih_0 =
> il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> @@ -68,7 +68,7 @@ public class TestArrayAccess03Creator ex
> 
>    private void createMethod_1() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC,
> Type.VOID, new Type[] { Type.OBJECT }, new String[] { "arg0" },
> "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03",
> il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC |
> Constants.ACC_STATIC, Type.VOID, new Type[] { Type.OBJECT }, new
> String[] { "arg0" }, "test",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess03", il, _cp);
> 
>      InstructionHandle ih_0 = il.append(new PUSH(_cp, 1));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> 
> Modified:
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java (original)
> +++
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestArrayAccess04Creator.java Wed Aug 12 15:29:23 2015
> @@ -31,13 +31,13 @@ import org.apache.commons.bcel6.generic.
>  import org.apache.commons.bcel6.generic.Type;
>  import org.junit.Assert;
> 
> -public class TestArrayAccess04Creator extends TestCreator implements
> Constants {
> +public class TestArrayAccess04Creator extends TestCreator {
>    private InstructionFactory _factory;
>    private ConstantPoolGen    _cp;
>    private ClassGen           _cg;
> 
>    public TestArrayAccess04Creator() {
> -    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess04",
> "java.lang.Object", "TestArrayAccess04.java", ACC_PUBLIC | ACC_SUPER,
> new String[] {  });
> +    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestArrayAccess04",
> "java.lang.Object", "TestArrayAccess04.java", Constants.ACC_PUBLIC |
> Constants.ACC_SUPER, new String[] {  });
> 
>      _cp = _cg.getConstantPool();
>      _factory = new InstructionFactory(_cg, _cp);
> @@ -51,7 +51,7 @@ public class TestArrayAccess04Creator ex
> 
>    private void createMethod_0() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", il, _cp);
> 
>      InstructionHandle ih_0 =
> il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> @@ -66,7 +66,7 @@ public class TestArrayAccess04Creator ex
> 
>    private void createMethod_1() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC,
> Type.VOID, new Type[] { Type.OBJECT }, new String[] { "arg0" },
> "test", "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04",
> il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC |
> Constants.ACC_STATIC, Type.VOID, new Type[] { Type.OBJECT }, new
> String[] { "arg0" }, "test",
> "org.apache.commons.bcel6.verifier.tests.TestArrayAccess04", il, _cp);
> 
>      InstructionHandle ih_0 = il.append(new PUSH(_cp, 1));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> 
> Modified:
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java (original)
> +++
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn01Creator.java Wed Aug 12 15:29:23 2015
> @@ -31,13 +31,13 @@ import org.apache.commons.bcel6.generic.
>  import org.apache.commons.bcel6.generic.Type;
>  import org.junit.Assert;
> 
> -public class TestReturn01Creator extends TestCreator implements 
> Constants {
> +public class TestReturn01Creator extends TestCreator {
>    private InstructionFactory _factory;
>    private ConstantPoolGen    _cp;
>    private ClassGen           _cg;
> 
>    public TestReturn01Creator() {
> -    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn01",
> "java.lang.Object", "TestReturn01.java", ACC_PUBLIC | ACC_SUPER, new
> String[] {  });
> +    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn01",
> "java.lang.Object", "TestReturn01.java", Constants.ACC_PUBLIC |
> Constants.ACC_SUPER, new String[] {  });
> 
>      _cp = _cg.getConstantPool();
>      _factory = new InstructionFactory(_cg, _cp);
> @@ -51,7 +51,7 @@ public class TestReturn01Creator extends
> 
>    private void createMethod_0() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestReturn01", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestReturn01", il, _cp);
> 
>      InstructionHandle ih_0 =
> il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> @@ -66,7 +66,7 @@ public class TestReturn01Creator extends
> 
>    private void createMethod_1() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC,
> Type.VOID, Type.NO_ARGS, new String[] {  }, "foo",
> "org.apache.commons.bcel6.verifier.tests.TestReturn01", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC |
> Constants.ACC_STATIC, Type.VOID, Type.NO_ARGS, new String[] {  },
> "foo", "org.apache.commons.bcel6.verifier.tests.TestReturn01", il,
> _cp);
> 
>      InstructionHandle ih_0 = 
> il.append(_factory.createNew("java.lang.Object"));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> 
> Modified:
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java?rev=1695556&r1=1695555&r2=1695556&view=diff
> ==============================================================================
> ---
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java (original)
> +++
> commons/proper/bcel/trunk/src/test/java/org/apache/commons/bcel6/verifier/tests/TestReturn03Creator.java Wed Aug 12 15:29:23 2015
> @@ -31,13 +31,13 @@ import org.apache.commons.bcel6.generic.
>  import org.apache.commons.bcel6.generic.Type;
>  import org.junit.Assert;
> 
> -public class TestReturn03Creator extends TestCreator implements 
> Constants {
> +public class TestReturn03Creator extends TestCreator {
>    private InstructionFactory _factory;
>    private ConstantPoolGen    _cp;
>    private ClassGen           _cg;
> 
>    public TestReturn03Creator() {
> -    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn03",
> "java.lang.Object", "TestReturn03.java", ACC_PUBLIC | ACC_SUPER, new
> String[] {  });
> +    _cg = new
> ClassGen("org.apache.commons.bcel6.verifier.tests.TestReturn03",
> "java.lang.Object", "TestReturn03.java", Constants.ACC_PUBLIC |
> Constants.ACC_SUPER, new String[] {  });
> 
>      _cp = _cg.getConstantPool();
>      _factory = new InstructionFactory(_cg, _cp);
> @@ -51,7 +51,7 @@ public class TestReturn03Creator extends
> 
>    private void createMethod_0() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestReturn03", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC, Type.VOID,
> Type.NO_ARGS, new String[] {  }, "<init>",
> "org.apache.commons.bcel6.verifier.tests.TestReturn03", il, _cp);
> 
>      InstructionHandle ih_0 =
> il.append(InstructionFactory.createLoad(Type.OBJECT, 0));
>      Assert.assertNotNull(ih_0); // TODO why is this not used
> @@ -66,7 +66,7 @@ public class TestReturn03Creator extends
> 
>    private void createMethod_1() {
>      InstructionList il = new InstructionList();
> -    MethodGen method = new MethodGen(ACC_PUBLIC | ACC_STATIC,
> Type.INT, Type.NO_ARGS, new String[] {  }, "test3",
> "org.apache.commons.bcel6.verifier.tests.TestReturn03", il, _cp);
> +    MethodGen method = new MethodGen(Constants.ACC_PUBLIC |
> Constants.ACC_STATIC, Type.INT, Type.NO_ARGS, new String[] {  },
> "test3", "org.apache.commons.bcel6.verifier.tests.TestReturn03", il,
> _cp);
> 
>      InstructionHandle ih_0 = 
> il.append(InstructionConstants.ACONST_NULL);
>      Assert.assertNotNull(ih_0); // TODO why is this not used