You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2019/09/01 22:08:25 UTC

[commons-bcel] 03/04: Cannot break binary compatibility with 6.3.1.

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-bcel.git

commit 06151c0b5f7f78f73354370f8ca4d863342fde39
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Sun Sep 1 17:47:35 2019 -0400

    Cannot break binary compatibility with 6.3.1.
---
 src/main/java/org/apache/bcel/Const.java             | 15 ++++++++++++++-
 src/main/java/org/apache/bcel/classfile/Utility.java |  2 +-
 src/main/java/org/apache/bcel/util/BCELifier.java    |  2 +-
 3 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/apache/bcel/Const.java b/src/main/java/org/apache/bcel/Const.java
index 79268ae..ba9e156 100644
--- a/src/main/java/org/apache/bcel/Const.java
+++ b/src/main/java/org/apache/bcel/Const.java
@@ -329,7 +329,20 @@ public final class Const {
    *  @see #ACC_PUBLIC
    */
   public static final short ACC_MODULE       = (short) 0x8000;
-  public static final int MAX_ACC_FLAG       = 0x8000; // ACC_MODULE is negative as a short
+
+  /** One of the access flags for fields, methods, or classes.
+   *  @see #ACC_PUBLIC
+   *  @deprecated Use {@link #MAX_ACC_FLAG_I}
+   */
+  @Deprecated
+  public static final short MAX_ACC_FLAG     = ACC_ENUM;
+  
+  /** One of the access flags for fields, methods, or classes.
+   * ACC_MODULE is negative as a short.
+   * @see #ACC_PUBLIC
+   * @since 6.4.0
+   */
+  public static final int MAX_ACC_FLAG_I = 0x8000; // ACC_MODULE is negative as a short
 
   // Note that do to overloading:
   // 'synchronized' is for methods, might be 'open' (if Module), 'super' (if class), or 'transitive' (if Module).
diff --git a/src/main/java/org/apache/bcel/classfile/Utility.java b/src/main/java/org/apache/bcel/classfile/Utility.java
index 17a7441..daf6013 100644
--- a/src/main/java/org/apache/bcel/classfile/Utility.java
+++ b/src/main/java/org/apache/bcel/classfile/Utility.java
@@ -102,7 +102,7 @@ public abstract class Utility {
     public static String accessToString( final int access_flags, final boolean for_class ) {
         final StringBuilder buf = new StringBuilder();
         int p = 0;
-        for (int i = 0; p < Const.MAX_ACC_FLAG; i++) { // Loop through known flags
+        for (int i = 0; p < Const.MAX_ACC_FLAG_I; i++) { // Loop through known flags
             p = pow2(i);
             if ((access_flags & p) != 0) {
                 /* Special case: Classes compiled with new compilers and with the
diff --git a/src/main/java/org/apache/bcel/util/BCELifier.java b/src/main/java/org/apache/bcel/util/BCELifier.java
index f861f7a..cb34928 100644
--- a/src/main/java/org/apache/bcel/util/BCELifier.java
+++ b/src/main/java/org/apache/bcel/util/BCELifier.java
@@ -213,7 +213,7 @@ public class BCELifier extends org.apache.bcel.classfile.EmptyVisitor {
             return "0";
         }
         final StringBuilder buf = new StringBuilder();
-        for (int i = 0, pow = 1; pow <= Const.MAX_ACC_FLAG; i++) {
+        for (int i = 0, pow = 1; pow <= Const.MAX_ACC_FLAG_I; i++) {
             if ((flags & pow) != 0) {
                 if ((pow == Const.ACC_SYNCHRONIZED) && (location == FLAGS.CLASS)) {
                     buf.append(CONSTANT_PREFIX+"ACC_SUPER | ");