#1108557 bcel: FTBFS with default Java 25

Package:
src:bcel
Source:
src:bcel
Submitter:
Vladimir Petko
Date:
2026-10-26 09:37:03 UTC
Severity:
normal
Tags:
#1108557#5
Date:
2025-07-01 04:16:19 UTC
From:
To:
Dear Maintainers,

The package bcel ftbfs with default Java 25.
The relevant part of the build log:
---------------

[INFO] Running org.apache.bcel.util.BCELifierTestCase
[ERROR] Tests run: 40, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 11.296 s <<< FAILURE! - in org.apache.bcel.util.BCELifierTestCase
[ERROR] testJavapCompare{String}[1]  Time elapsed: 1.657 s  <<< FAILURE!
org.opentest4j.AssertionFailedError:
expected: <Compiled from "Java8Example.java"
public interface Java8Example {
 public default void hello();
 Code:
 0: iconst_3
 1: anewarray #n
 4: dup
 5: iconst_0
 6: ldc #n
 8: aastore
 9: dup
 10: iconst_1
 11: ldc #n
 13: aastore
 14: dup
 15: iconst_2
 16: ldc #n
 18: aastore
 19: invokestatic #n
 22: astore_1
 23: getstatic #n
 26: aload_1
 27: invokevirtual #n
 30: aload_1
 31: invokeinterface #n, 1
 36: invokedynamic #n, 0
 41: invokeinterface #n, 2
 46: invokestatic #n
 49: invokeinterface #n, 2
 54: checkcast #n
 57: astore_2
 58: getstatic #n
 61: aload_2
 62: invokevirtual #n
 65: return

 private static boolean lambda$hello$0(java.lang.String);
 Code:
 0: aload_0
 1: invokevirtual #n
 4: iconst_2
 5: if_icmple 12
 8: iconst_1
 9: goto 13
 12: iconst_0
 13: ireturn
}
public interface Java8Example {
 public default void hello();
 Code:
 0: iconst_3
 1: anewarray #n
 4: dup
 5: iconst_0
 6: ldc #n
 8: aastore
 9: dup
 10: iconst_1
 11: ldc #n
 13: aastore
 14: dup
 15: iconst_2
 16: ldc #n
 18: aastore
 19: invokestatic #n
 22: astore_1
 23: getstatic #n
 26: aload_1
 27: invokevirtual #n
 30: aload_1
 31: invokeinterface #n, 1
Error: Bad tag (10) at index (43) position (466), expected InvokeDynamicEntry
 36: invokedynamic ???
 41: invokeinterface #n, 2
 46: invokestatic #n
 49: invokeinterface #n, 2
 54: checkcast #n
 57: astore_2
 58: getstatic #n
 61: aload_2
 62: invokevirtual #n
 65: return

 private static boolean lambda$hello$0(java.lang.String);
 Code:
 0: aload_0
 1: invokevirtual #n
 4: iconst_2
 5: if_icmple 12
 8: iconst_1
 9: goto 13
 12: iconst_0
 13: ireturn
}
	at org.apache.bcel.util.BCELifierTestCase.testClassOnPath(BCELifierTestCase.java:159)
	at org.apache.bcel.util.BCELifierTestCase.testJavapCompare(BCELifierTestCase.java:197)

[ERROR] testJavapCompare{String}[2]  Time elapsed: 1.982 s  <<< FAILURE!
org.opentest4j.AssertionFailedError:
expected: <Compiled from "Java8Example2.java"
public class Java8Example2 implements java.io.Serializable,java.lang.Runnable {
 private static final long serialVersionUID;

 public static final float E;

 public static final double PI;

 public static final char DOT;

 public static final short PORT;

 public static final int ICONST_M1;

 public static final int ICONST_0;

 public static final int ICONST_1;

 public static final int ICONST_2;

 public static final int ICONST_3;

 public static final int ICONST_4;

 public static final int ICONST_5;

 public static final long LCONST_0;

 public static final long LCONST_1;

 public static final float FCONST_0;

 public static final float FCONST_1;

 public static final float FCONST_2;

 public static final double DCONST_0;

 public static final double DCONST_1;

 public static final java.lang.Float FNULL;

 public static final java.lang.Double DNULL;

 public static final java.lang.Long LNULL;

 public static final byte INVOKESTATIC;

 public static final int[][] MULTI_ARRAY;

 public static final int[][] MULTI_ARRAY2;

 private static volatile transient java.lang.StringBuffer STRING_BUFFER;

 public Java8Example2();
 Code:
 0: aload_0
 1: invokespecial #n
 4: return

 public synchronized void run();
 Code:
 0: aload_0
 1: iconst_3
 2: anewarray #n
 5: dup
 6: iconst_0
 7: ldc #n
 9: aastore
 10: dup
 11: iconst_1
 12: ldc #n
 14: aastore
 15: dup
 16: iconst_2
 17: ldc #n
 19: aastore
 20: invokevirtual #n
 23: goto 31
 26: astore_1
 27: aload_1
 28: invokevirtual #n
 31: return
 Exception table:
 from to target type
 0 23 26 Class java/lang/Exception

 void check(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_1
 1: instanceof #n
 4: ifeq 16
 7: aload_1
 8: invokevirtual #n
 11: ldc #n
 13: if_acmpeq 24
 16: new #n
 19: dup
 20: invokespecial #n
 23: athrow
 24: return

 void hello(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_0
 1: aload_1
 2: invokevirtual #n
 5: aload_1
 6: invokestatic #n
 9: getstatic #n
 12: dup
 13: invokevirtual #n
 16: pop
 17: invokedynamic #n, 0
 22: invokeinterface #n, 2
 27: getstatic #n
 30: iconst_m1
 31: invokevirtual #n
 34: pop
 35: getstatic #n
 38: iconst_0
 39: invokevirtual #n
 42: pop
 43: getstatic #n
 46: iconst_1
 47: invokevirtual #n
 50: pop
 51: getstatic #n
 54: iconst_2
 55: invokevirtual #n
 58: pop
 59: getstatic #n
 62: iconst_3
 63: invokevirtual #n
 66: pop
 67: getstatic #n
 70: iconst_4
 71: invokevirtual #n
 74: pop
 75: getstatic #n
 78: iconst_5
 79: invokevirtual #n
 82: pop
 83: getstatic #n
 86: lconst_0
 87: invokevirtual #n
 90: pop
 91: getstatic #n
 94: lconst_1
 95: invokevirtual #n
 98: pop
 99: getstatic #n
 102: fconst_0
 103: invokevirtual #n
 106: pop
 107: getstatic #n
 110: fconst_1
 111: invokevirtual #n
 114: pop
 115: getstatic #n
 118: fconst_2
 119: invokevirtual #n
 122: pop
 123: getstatic #n
 126: dconst_0
 127: invokevirtual #n
 130: pop
 131: getstatic #n
 134: dconst_1
 135: invokevirtual #n
 138: pop
 139: getstatic #n
 142: getstatic #n
 145: invokevirtual #n
 148: pop
 149: getstatic #n
 152: getstatic #n
 155: invokevirtual #n
 158: pop
 159: getstatic #n
 162: getstatic #n
 165: invokevirtual #n
 168: pop
 169: getstatic #n
 172: bipush 46
 174: invokevirtual #n
 177: pop
 178: getstatic #n
 181: bipush -72
 183: invokevirtual #n
 186: pop
 187: getstatic #n
 190: aload_0
 191: ldc #n
 193: ldc #n
 195: invokevirtual #n
 198: invokevirtual #n
 201: pop
 202: getstatic #n
 205: aload_0
 206: ldc #n
 208: ldc #n
 210: invokevirtual #n
 213: invokevirtual #n
 216: pop
 217: getstatic #n
 220: aload_0
 221: ldc #n
 223: ldc #n
 225: invokevirtual #n
 228: invokevirtual #n
 231: pop
 232: getstatic #n
 235: aload_0
 236: ldc2_w #n
 239: ldc2_w #n
 242: invokevirtual #n
 245: invokevirtual #n
 248: pop
 249: getstatic #n
 252: aload_0
 253: ldc2_w #n
 256: ldc2_w #n
 259: invokevirtual #n
 262: invokevirtual #n
 265: pop
 266: getstatic #n
 269: aload_0
 270: ldc2_w #n
 273: ldc2_w #n
 276: invokevirtual #n
 279: invokevirtual #n
 282: pop
 283: getstatic #n
 286: ldc2_w #n
 289: invokevirtual #n
 292: pop
 293: getstatic #n
 296: getstatic #n
 299: invokestatic #n
 302: invokevirtual #n
 305: pop
 306: return

 double drem(double, double);
 Code:
 0: dload_1
 1: dload_3
 2: drem
 3: dreturn

 float frem(float, float);
 Code:
 0: fload_1
 1: fload_2
 2: frem
 3: freturn

 static {};
 Code:
 0: aconst_null
 1: putstatic #n
 4: aconst_null
 5: putstatic #n
 8: aconst_null
 9: putstatic #n
 12: iconst_2
 13: anewarray #n
 16: dup
 17: iconst_0
 18: iconst_1
 19: newarray int
 21: dup
 22: iconst_0
 23: iconst_0
 24: iastore
 25: aastore
 26: dup
 27: iconst_1
 28: iconst_1
 29: newarray int
 31: dup
 32: iconst_0
 33: iconst_1
 34: iastore
 35: aastore
 36: putstatic #n
 39: iconst_2
 40: iconst_2
 41: multianewarray #n, 2
 45: putstatic #n
 48: new #n
 51: dup
 52: invokespecial #n
 55: putstatic #n
 58: return
}
public class Java8Example2 implements java.io.Serializable,java.lang.Runnable {
 private static final long serialVersionUID;

 public static final float E;

 public static final double PI;

 public static final char DOT;

 public static final short PORT;

 public static final int ICONST_M1;

 public static final int ICONST_0;

 public static final int ICONST_1;

 public static final int ICONST_2;

 public static final int ICONST_3;

 public static final int ICONST_4;

 public static final int ICONST_5;

 public static final long LCONST_0;

 public static final long LCONST_1;

 public static final float FCONST_0;

 public static final float FCONST_1;

 public static final float FCONST_2;

 public static final double DCONST_0;

 public static final double DCONST_1;

 public static final java.lang.Float FNULL;

 public static final java.lang.Double DNULL;

 public static final java.lang.Long LNULL;

 public static final byte INVOKESTATIC;

 public static final int[][] MULTI_ARRAY;

 public static final int[][] MULTI_ARRAY2;

 private static volatile transient java.lang.StringBuffer STRING_BUFFER;

 public Java8Example2();
 Code:
 0: aload_0
 1: invokespecial #n
 4: return

 public synchronized void run();
 Code:
 0: aload_0
 1: iconst_3
 2: anewarray #n
 5: dup
 6: iconst_0
 7: ldc #n
 9: aastore
 10: dup
 11: iconst_1
 12: ldc #n
 14: aastore
 15: dup
 16: iconst_2
 17: ldc #n
 19: aastore
 20: invokevirtual #n
 23: goto 31
 26: astore_1
 27: aload_1
 28: invokevirtual #n
 31: return
 Exception table:
 from to target type
 0 23 26 Class java/lang/Exception

 void check(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_1
 1: instanceof #n
 4: ifeq 16
 7: aload_1
 8: invokevirtual #n
 11: ldc #n
 13: if_acmpeq 24
 16: new #n
 19: dup
 20: invokespecial #n
 23: athrow
 24: return

 void hello(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_0
 1: aload_1
 2: invokevirtual #n
 5: aload_1
 6: invokestatic #n
 9: getstatic #n
 12: dup
 13: invokevirtual #n
 16: pop
Error: Bad tag (10) at index (121) position (1181), expected InvokeDynamicEntry
 17: invokedynamic ???
 22: invokeinterface #n, 2
 27: getstatic #n
 30: iconst_m1
 31: invokevirtual #n
 34: pop
 35: getstatic #n
 38: iconst_0
 39: invokevirtual #n
 42: pop
 43: getstatic #n
 46: iconst_1
 47: invokevirtual #n
 50: pop
 51: getstatic #n
 54: iconst_2
 55: invokevirtual #n
 58: pop
 59: getstatic #n
 62: iconst_3
 63: invokevirtual #n
 66: pop
 67: getstatic #n
 70: iconst_4
 71: invokevirtual #n
 74: pop
 75: getstatic #n
 78: iconst_5
 79: invokevirtual #n
 82: pop
 83: getstatic #n
 86: lconst_0
 87: invokevirtual #n
 90: pop
 91: getstatic #n
 94: lconst_1
 95: invokevirtual #n
 98: pop
 99: getstatic #n
 102: fconst_0
 103: invokevirtual #n
 106: pop
 107: getstatic #n
 110: fconst_1
 111: invokevirtual #n
 114: pop
 115: getstatic #n
 118: fconst_2
 119: invokevirtual #n
 122: pop
 123: getstatic #n
 126: dconst_0
 127: invokevirtual #n
 130: pop
 131: getstatic #n
 134: dconst_1
 135: invokevirtual #n
 138: pop
 139: getstatic #n
 142: getstatic #n
 145: invokevirtual #n
 148: pop
 149: getstatic #n
 152: getstatic #n
 155: invokevirtual #n
 158: pop
 159: getstatic #n
 162: getstatic #n
 165: invokevirtual #n
 168: pop
 169: getstatic #n
 172: bipush 46
 174: invokevirtual #n
 177: pop
 178: getstatic #n
 181: bipush -72
 183: invokevirtual #n
 186: pop
 187: getstatic #n
 190: aload_0
 191: ldc #n
 193: ldc #n
 195: invokevirtual #n
 198: invokevirtual #n
 201: pop
 202: getstatic #n
 205: aload_0
 206: ldc #n
 208: ldc #n
 210: invokevirtual #n
 213: invokevirtual #n
 216: pop
 217: getstatic #n
 220: aload_0
 221: ldc #n
 223: ldc #n
 225: invokevirtual #n
 228: invokevirtual #n
 231: pop
 232: getstatic #n
 235: aload_0
 236: ldc2_w #n
 239: ldc2_w #n
 242: invokevirtual #n
 245: invokevirtual #n
 248: pop
 249: getstatic #n
 252: aload_0
 253: ldc2_w #n
 256: ldc2_w #n
 259: invokevirtual #n
 262: invokevirtual #n
 265: pop
 266: getstatic #n
 269: aload_0
 270: ldc2_w #n
 273: ldc2_w #n
 276: invokevirtual #n
 279: invokevirtual #n
 282: pop
 283: getstatic #n
 286: ldc2_w #n
 289: invokevirtual #n
 292: pop
 293: getstatic #n
 296: getstatic #n
 299: invokestatic #n
 302: invokevirtual #n
 305: pop
 306: return

 double drem(double, double);
 Code:
 0: dload_1
 1: dload_3
 2: drem
 3: dreturn

 float frem(float, float);
 Code:
 0: fload_1
 1: fload_2
 2: frem
 3: freturn

 static {};
 Code:
 0: aconst_null
 1: putstatic #n
 4: aconst_null
 5: putstatic #n
 8: aconst_null
 9: putstatic #n
 12: iconst_2
 13: anewarray #n
 16: dup
 17: iconst_0
 18: iconst_1
 19: newarray int
 21: dup
 22: iconst_0
 23: iconst_0
 24: iastore
 25: aastore
 26: dup
 27: iconst_1
 28: iconst_1
 29: newarray int
 31: dup
 32: iconst_0
 33: iconst_1
 34: iastore
 35: aastore
 36: putstatic #n
 39: iconst_2
 40: iconst_2
 41: multianewarray #n, 2
 45: putstatic #n
 48: new #n
 51: dup
 52: invokespecial #n
 55: putstatic #n
 58: return
}
	at org.apache.bcel.util.BCELifierTestCase.testClassOnPath(BCELifierTestCase.java:159)
	at org.apache.bcel.util.BCELifierTestCase.testJavapCompare(BCELifierTestCase.java:197)

[INFO] Running org.apache.bcel.util.ModularRuntimeImageTestCase
[INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.013 s - in org.apache.bcel.util.ModularRuntimeImageTestCase
[INFO] Running org.apache.bcel.util.ClassPathRepositoryTestCase
[INFO] Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 s - in org.apache.bcel.util.ClassPathRepositoryTestCase
[INFO] Running org.apache.bcel.PerformanceTest
Parsing /usr/lib/jvm/java-25-openjdk-amd64/lib/jrt-fs.jar
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.044 s - in org.apache.bcel.PerformanceTest
[INFO] Running org.apache.bcel.CounterVisitorTestCase
[INFO] Tests run: 39, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.015 s - in org.apache.bcel.CounterVisitorTestCase
[INFO] Running org.apache.bcel.AnnotationDefaultAttributeTestCase
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in org.apache.bcel.AnnotationDefaultAttributeTestCase
[INFO] Running org.apache.bcel.OssFuzzTestCase
[INFO] Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 s - in org.apache.bcel.OssFuzzTestCase
[INFO] Running org.apache.bcel.EnumAccessFlagTestCase
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in org.apache.bcel.EnumAccessFlagTestCase
[INFO] Running org.apache.bcel.ElementValueGenTestCase
[INFO] Tests run: 11, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in org.apache.bcel.ElementValueGenTestCase
[INFO]
[INFO] Results:
[INFO]
[ERROR] Failures:
[ERROR]   ConstantPoolModuleAccessTestCase.testJREModules:366 expected: <[java.lang.System$LoggerFinder, java.net.ContentHandlerFactory, java.net.spi.InetAddressResolverProvider, java.net.spi.URLStreamHandlerProvider, java.nio.channels.spi.AsynchronousChannelProvider, java.nio.channels.spi.SelectorProvider, java.nio.charset.spi.CharsetProvider, java.nio.file.spi.FileSystemProvider, java.nio.file.spi.FileTypeDetector, java.security.Provider, java.text.spi.BreakIteratorProvider, java.text.spi.CollatorProvider, java.text.spi.DateFormatProvider, java.text.spi.DateFormatSymbolsProvider, java.text.spi.DecimalFormatSymbolsProvider, java.text.spi.NumberFormatProvider, java.time.chrono.AbstractChronology, java.time.chrono.Chronology, java.time.zone.ZoneRulesProvider, java.util.random.RandomGenerator, java.util.spi.CalendarDataProvider, java.util.spi.CalendarNameProvider, java.util.spi.CurrencyNameProvider, java.util.spi.LocaleNameProvider, java.util.spi.ResourceBundleControlProvider, java.util.spi.ResourceBundleProvider, java.util.spi.TimeZoneNameProvider, java.util.spi.ToolProvider, javax.security.auth.spi.LoginModule, jdk.internal.io.JdkConsoleProvider, jdk.internal.logger.DefaultLoggerFinder, sun.text.spi.JavaTimeDateTimePatternProvider, sun.util.locale.provider.LocaleDataMetaInfo, sun.util.resources.LocaleData$CommonResourceBundleProvider, sun.util.resources.LocaleData$SupplementaryResourceBundleProvider, sun.util.spi.CalendarProvider]> but was: <[java.lang.System$LoggerFinder, java.net.ContentHandlerFactory, java.net.spi.InetAddressResolverProvider, java.net.spi.URLStreamHandlerProvider, java.nio.channels.spi.AsynchronousChannelProvider, java.nio.channels.spi.SelectorProvider, java.nio.charset.spi.CharsetProvider, java.nio.file.spi.FileSystemProvider, java.nio.file.spi.FileTypeDetector, java.security.Provider, java.text.spi.BreakIteratorProvider, java.text.spi.CollatorProvider, java.text.spi.DateFormatProvider, java.text.spi.DateFormatSymbolsProvider, java.text.spi.DecimalFormatSymbolsProvider, java.text.spi.NumberFormatProvider, java.time.chrono.AbstractChronology, java.time.chrono.Chronology, java.time.zone.ZoneRulesProvider, java.util.spi.CalendarDataProvider, java.util.spi.CalendarNameProvider, java.util.spi.CurrencyNameProvider, java.util.spi.LocaleNameProvider, java.util.spi.ResourceBundleControlProvider, java.util.spi.ResourceBundleProvider, java.util.spi.TimeZoneNameProvider, java.util.spi.ToolProvider, javax.security.auth.spi.LoginModule, jdk.internal.io.JdkConsoleProvider, jdk.internal.logger.DefaultLoggerFinder, sun.text.spi.JavaTimeDateTimePatternProvider, sun.util.locale.provider.LocaleDataMetaInfo, sun.util.resources.LocaleData$CommonResourceBundleProvider, sun.util.resources.LocaleData$SupplementaryResourceBundleProvider, sun.util.spi.CalendarProvider]>
[ERROR]   ConstantPoolModuleAccessTestCase.testJREModules:366 expected: <[javax.annotation.processing.Processor, com.sun.source.util.Plugin, com.sun.tools.doclint.DocLint, com.sun.tools.javac.platform.PlatformProvider]> but was: <[javax.annotation.processing.Processor, com.sun.source.util.Plugin, com.sun.tools.doclint.DocLint, com.sun.tools.javac.platform.PlatformProvider, com.sun.tools.javac.api.JavacTrees$DocCommentTreeTransformer]>
[ERROR]   ConstantPoolModuleAccessTestCase.testJREModules:366 Found [com.sun.tools.javac.platform.PlatformProvider] in /jdk.jdeps/module-info.class ==> expected: <0> but was: <1>
[ERROR]   BCELifierTestCase.testJavapCompare:197->testClassOnPath:159 expected: <Compiled from "Java8Example.java"
public interface Java8Example {
 public default void hello();
 Code:
 0: iconst_3
 1: anewarray #n
 4: dup
 5: iconst_0
 6: ldc #n
 8: aastore
 9: dup
 10: iconst_1
 11: ldc #n
 13: aastore
 14: dup
 15: iconst_2
 16: ldc #n
 18: aastore
 19: invokestatic #n
 22: astore_1
 23: getstatic #n
 26: aload_1
 27: invokevirtual #n
 30: aload_1
 31: invokeinterface #n, 1
 36: invokedynamic #n, 0
 41: invokeinterface #n, 2
 46: invokestatic #n
 49: invokeinterface #n, 2
 54: checkcast #n
 57: astore_2
 58: getstatic #n
 61: aload_2
 62: invokevirtual #n
 65: return

 private static boolean lambda$hello$0(java.lang.String);
 Code:
 0: aload_0
 1: invokevirtual #n
 4: iconst_2
 5: if_icmple 12
 8: iconst_1
 9: goto 13
 12: iconst_0
 13: ireturn
}
public interface Java8Example {
 public default void hello();
 Code:
 0: iconst_3
 1: anewarray #n
 4: dup
 5: iconst_0
 6: ldc #n
 8: aastore
 9: dup
 10: iconst_1
 11: ldc #n
 13: aastore
 14: dup
 15: iconst_2
 16: ldc #n
 18: aastore
 19: invokestatic #n
 22: astore_1
 23: getstatic #n
 26: aload_1
 27: invokevirtual #n
 30: aload_1
 31: invokeinterface #n, 1
Error: Bad tag (10) at index (43) position (466), expected InvokeDynamicEntry
 36: invokedynamic ???
 41: invokeinterface #n, 2
 46: invokestatic #n
 49: invokeinterface #n, 2
 54: checkcast #n
 57: astore_2
 58: getstatic #n
 61: aload_2
 62: invokevirtual #n
 65: return

 private static boolean lambda$hello$0(java.lang.String);
 Code:
 0: aload_0
 1: invokevirtual #n
 4: iconst_2
 5: if_icmple 12
 8: iconst_1
 9: goto 13
 12: iconst_0
 13: ireturn
}
[ERROR]   BCELifierTestCase.testJavapCompare:197->testClassOnPath:159 expected: <Compiled from "Java8Example2.java"
public class Java8Example2 implements java.io.Serializable,java.lang.Runnable {
 private static final long serialVersionUID;

 public static final float E;

 public static final double PI;

 public static final char DOT;

 public static final short PORT;

 public static final int ICONST_M1;

 public static final int ICONST_0;

 public static final int ICONST_1;

 public static final int ICONST_2;

 public static final int ICONST_3;

 public static final int ICONST_4;

 public static final int ICONST_5;

 public static final long LCONST_0;

 public static final long LCONST_1;

 public static final float FCONST_0;

 public static final float FCONST_1;

 public static final float FCONST_2;

 public static final double DCONST_0;

 public static final double DCONST_1;

 public static final java.lang.Float FNULL;

 public static final java.lang.Double DNULL;

 public static final java.lang.Long LNULL;

 public static final byte INVOKESTATIC;

 public static final int[][] MULTI_ARRAY;

 public static final int[][] MULTI_ARRAY2;

 private static volatile transient java.lang.StringBuffer STRING_BUFFER;

 public Java8Example2();
 Code:
 0: aload_0
 1: invokespecial #n
 4: return

 public synchronized void run();
 Code:
 0: aload_0
 1: iconst_3
 2: anewarray #n
 5: dup
 6: iconst_0
 7: ldc #n
 9: aastore
 10: dup
 11: iconst_1
 12: ldc #n
 14: aastore
 15: dup
 16: iconst_2
 17: ldc #n
 19: aastore
 20: invokevirtual #n
 23: goto 31
 26: astore_1
 27: aload_1
 28: invokevirtual #n
 31: return
 Exception table:
 from to target type
 0 23 26 Class java/lang/Exception

 void check(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_1
 1: instanceof #n
 4: ifeq 16
 7: aload_1
 8: invokevirtual #n
 11: ldc #n
 13: if_acmpeq 24
 16: new #n
 19: dup
 20: invokespecial #n
 23: athrow
 24: return

 void hello(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_0
 1: aload_1
 2: invokevirtual #n
 5: aload_1
 6: invokestatic #n
 9: getstatic #n
 12: dup
 13: invokevirtual #n
 16: pop
 17: invokedynamic #n, 0
 22: invokeinterface #n, 2
 27: getstatic #n
 30: iconst_m1
 31: invokevirtual #n
 34: pop
 35: getstatic #n
 38: iconst_0
 39: invokevirtual #n
 42: pop
 43: getstatic #n
 46: iconst_1
 47: invokevirtual #n
 50: pop
 51: getstatic #n
 54: iconst_2
 55: invokevirtual #n
 58: pop
 59: getstatic #n
 62: iconst_3
 63: invokevirtual #n
 66: pop
 67: getstatic #n
 70: iconst_4
 71: invokevirtual #n
 74: pop
 75: getstatic #n
 78: iconst_5
 79: invokevirtual #n
 82: pop
 83: getstatic #n
 86: lconst_0
 87: invokevirtual #n
 90: pop
 91: getstatic #n
 94: lconst_1
 95: invokevirtual #n
 98: pop
 99: getstatic #n
 102: fconst_0
 103: invokevirtual #n
 106: pop
 107: getstatic #n
 110: fconst_1
 111: invokevirtual #n
 114: pop
 115: getstatic #n
 118: fconst_2
 119: invokevirtual #n
 122: pop
 123: getstatic #n
 126: dconst_0
 127: invokevirtual #n
 130: pop
 131: getstatic #n
 134: dconst_1
 135: invokevirtual #n
 138: pop
 139: getstatic #n
 142: getstatic #n
 145: invokevirtual #n
 148: pop
 149: getstatic #n
 152: getstatic #n
 155: invokevirtual #n
 158: pop
 159: getstatic #n
 162: getstatic #n
 165: invokevirtual #n
 168: pop
 169: getstatic #n
 172: bipush 46
 174: invokevirtual #n
 177: pop
 178: getstatic #n
 181: bipush -72
 183: invokevirtual #n
 186: pop
 187: getstatic #n
 190: aload_0
 191: ldc #n
 193: ldc #n
 195: invokevirtual #n
 198: invokevirtual #n
 201: pop
 202: getstatic #n
 205: aload_0
 206: ldc #n
 208: ldc #n
 210: invokevirtual #n
 213: invokevirtual #n
 216: pop
 217: getstatic #n
 220: aload_0
 221: ldc #n
 223: ldc #n
 225: invokevirtual #n
 228: invokevirtual #n
 231: pop
 232: getstatic #n
 235: aload_0
 236: ldc2_w #n
 239: ldc2_w #n
 242: invokevirtual #n
 245: invokevirtual #n
 248: pop
 249: getstatic #n
 252: aload_0
 253: ldc2_w #n
 256: ldc2_w #n
 259: invokevirtual #n
 262: invokevirtual #n
 265: pop
 266: getstatic #n
 269: aload_0
 270: ldc2_w #n
 273: ldc2_w #n
 276: invokevirtual #n
 279: invokevirtual #n
 282: pop
 283: getstatic #n
 286: ldc2_w #n
 289: invokevirtual #n
 292: pop
 293: getstatic #n
 296: getstatic #n
 299: invokestatic #n
 302: invokevirtual #n
 305: pop
 306: return

 double drem(double, double);
 Code:
 0: dload_1
 1: dload_3
 2: drem
 3: dreturn

 float frem(float, float);
 Code:
 0: fload_1
 1: fload_2
 2: frem
 3: freturn

 static {};
 Code:
 0: aconst_null
 1: putstatic #n
 4: aconst_null
 5: putstatic #n
 8: aconst_null
 9: putstatic #n
 12: iconst_2
 13: anewarray #n
 16: dup
 17: iconst_0
 18: iconst_1
 19: newarray int
 21: dup
 22: iconst_0
 23: iconst_0
 24: iastore
 25: aastore
 26: dup
 27: iconst_1
 28: iconst_1
 29: newarray int
 31: dup
 32: iconst_0
 33: iconst_1
 34: iastore
 35: aastore
 36: putstatic #n
 39: iconst_2
 40: iconst_2
 41: multianewarray #n, 2
 45: putstatic #n
 48: new #n
 51: dup
 52: invokespecial #n
 55: putstatic #n
 58: return
}
public class Java8Example2 implements java.io.Serializable,java.lang.Runnable {
 private static final long serialVersionUID;

 public static final float E;

 public static final double PI;

 public static final char DOT;

 public static final short PORT;

 public static final int ICONST_M1;

 public static final int ICONST_0;

 public static final int ICONST_1;

 public static final int ICONST_2;

 public static final int ICONST_3;

 public static final int ICONST_4;

 public static final int ICONST_5;

 public static final long LCONST_0;

 public static final long LCONST_1;

 public static final float FCONST_0;

 public static final float FCONST_1;

 public static final float FCONST_2;

 public static final double DCONST_0;

 public static final double DCONST_1;

 public static final java.lang.Float FNULL;

 public static final java.lang.Double DNULL;

 public static final java.lang.Long LNULL;

 public static final byte INVOKESTATIC;

 public static final int[][] MULTI_ARRAY;

 public static final int[][] MULTI_ARRAY2;

 private static volatile transient java.lang.StringBuffer STRING_BUFFER;

 public Java8Example2();
 Code:
 0: aload_0
 1: invokespecial #n
 4: return

 public synchronized void run();
 Code:
 0: aload_0
 1: iconst_3
 2: anewarray #n
 5: dup
 6: iconst_0
 7: ldc #n
 9: aastore
 10: dup
 11: iconst_1
 12: ldc #n
 14: aastore
 15: dup
 16: iconst_2
 17: ldc #n
 19: aastore
 20: invokevirtual #n
 23: goto 31
 26: astore_1
 27: aload_1
 28: invokevirtual #n
 31: return
 Exception table:
 from to target type
 0 23 26 Class java/lang/Exception

 void check(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_1
 1: instanceof #n
 4: ifeq 16
 7: aload_1
 8: invokevirtual #n
 11: ldc #n
 13: if_acmpeq 24
 16: new #n
 19: dup
 20: invokespecial #n
 23: athrow
 24: return

 void hello(java.lang.String...) throws java.lang.Exception;
 Code:
 0: aload_0
 1: aload_1
 2: invokevirtual #n
 5: aload_1
 6: invokestatic #n
 9: getstatic #n
 12: dup
 13: invokevirtual #n
 16: pop
Error: Bad tag (10) at index (121) position (1181), expected InvokeDynamicEntry
 17: invokedynamic ???
 22: invokeinterface #n, 2
 27: getstatic #n
 30: iconst_m1
 31: invokevirtual #n
 34: pop
 35: getstatic #n
 38: iconst_0
 39: invokevirtual #n
 42: pop
 43: getstatic #n
 46: iconst_1
 47: invokevirtual #n
 50: pop
 51: getstatic #n
 54: iconst_2
 55: invokevirtual #n
 58: pop
 59: getstatic #n
 62: iconst_3
 63: invokevirtual #n
 66: pop
 67: getstatic #n
 70: iconst_4
 71: invokevirtual #n
 74: pop
 75: getstatic #n
 78: iconst_5
 79: invokevirtual #n
 82: pop
 83: getstatic #n
 86: lconst_0
 87: invokevirtual #n
 90: pop
 91: getstatic #n
 94: lconst_1
 95: invokevirtual #n
 98: pop
 99: getstatic #n
 102: fconst_0
 103: invokevirtual #n
 106: pop
 107: getstatic #n
 110: fconst_1
 111: invokevirtual #n
 114: pop
 115: getstatic #n
 118: fconst_2
 119: invokevirtual #n
 122: pop
 123: getstatic #n
 126: dconst_0
 127: invokevirtual #n
 130: pop
 131: getstatic #n
 134: dconst_1
 135: invokevirtual #n
 138: pop
 139: getstatic #n
 142: getstatic #n
 145: invokevirtual #n
 148: pop
 149: getstatic #n
 152: getstatic #n
 155: invokevirtual #n
 158: pop
 159: getstatic #n
 162: getstatic #n
 165: invokevirtual #n
 168: pop
 169: getstatic #n
 172: bipush 46
 174: invokevirtual #n
 177: pop
 178: getstatic #n
 181: bipush -72
 183: invokevirtual #n
 186: pop
 187: getstatic #n
 190: aload_0
 191: ldc #n
 193: ldc #n
 195: invokevirtual #n
 198: invokevirtual #n
 201: pop
 202: getstatic #n
 205: aload_0
 206: ldc #n
 208: ldc #n
 210: invokevirtual #n
 213: invokevirtual #n
 216: pop
 217: getstatic #n
 220: aload_0
 221: ldc #n
 223: ldc #n
 225: invokevirtual #n
 228: invokevirtual #n
 231: pop
 232: getstatic #n
 235: aload_0
 236: ldc2_w #n
 239: ldc2_w #n
 242: invokevirtual #n
 245: invokevirtual #n
 248: pop
 249: getstatic #n
 252: aload_0
 253: ldc2_w #n
 256: ldc2_w #n
 259: invokevirtual #n
 262: invokevirtual #n
 265: pop
 266: getstatic #n
 269: aload_0
 270: ldc2_w #n
 273: ldc2_w #n
 276: invokevirtual #n
 279: invokevirtual #n
 282: pop
 283: getstatic #n
 286: ldc2_w #n
 289: invokevirtual #n
 292: pop
 293: getstatic #n
 296: getstatic #n
 299: invokestatic #n
 302: invokevirtual #n
 305: pop
 306: return

 double drem(double, double);
 Code:
 0: dload_1
 1: dload_3
 2: drem
 3: dreturn

 float frem(float, float);
 Code:
 0: fload_1
 1: fload_2
 2: frem
 3: freturn

 static {};
 Code:
 0: aconst_null
 1: putstatic #n
 4: aconst_null
 5: putstatic #n
 8: aconst_null
 9: putstatic #n
 12: iconst_2
 13: anewarray #n
 16: dup
 17: iconst_0
 18: iconst_1
 19: newarray int
 21: dup
 22: iconst_0
 23: iconst_0
 24: iastore
 25: aastore
 26: dup
 27: iconst_1
 28: iconst_1
 29: newarray int
 31: dup
 32: iconst_0
 33: iconst_1
 34: iastore
 35: aastore
 36: putstatic #n
 39: iconst_2
 40: iconst_2
 41: multianewarray #n, 2
 45: putstatic #n
 48: new #n
 51: dup
 52: invokespecial #n
 55: putstatic #n
 58: return
}
[INFO]
[ERROR] Tests run: 517, Failures: 5, Errors: 0, Skipped: 13
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
---------------

#1108557#10
Date:
2026-01-29 21:29:52 UTC
From:
To:
Dear Maintainers,

To resolve the issue, bcel needs to be upgraded to the version that
supports Java 25. This requires updating JUnit5 so that it could
provide a constant that allows to specify Java 25-specific tests, and
opentest4j-reporting, as the newer junit requires opentest4j-reporting
update.

I have raised MRs for opentest4j-reporting[1], junit5[2] and bcel[3] upgrades.

Best regards,
Vladimir.

[1]  https://salsa.debian.org/java-team/opentest4j-reporting/-/merge_requests/1
[2] https://salsa.debian.org/java-team/junit5/-/merge_requests/2
[3] https://salsa.debian.org/java-team/bcel/-/merge_requests/1

#1108557#21
Date:
2026-10-26 09:34:34 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
bcel, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1108557@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Emmanuel Bourg <ebourg@apache.org> (supplier of updated bcel package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Mon, 26 Oct 2026 09:43:26 +0100
Source: bcel
Architecture: source
Version: 6.13.0-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Java Maintainers <pkg-java-maintainers@lists.alioth.debian.org>
Changed-By: Emmanuel Bourg <ebourg@apache.org>
Closes: 1108557 1139087 1150215 1150227
Changes:
 bcel (6.13.0-1) unstable; urgency=medium
 .
   * New upstream release (Closes: #1108557)
     - Fixes CVE-2026-94114 and CVE-2026-105111 (Closes: #1150215, #1150227)
     - Refreshed the patches
     - New build dependency on libcommons-io-java
   * Standards-Version updated to 4.7.4
   * Removed the Priority field
   * Converted debian/watch to the version 5 format
   * Removed Torsten Werner from the Uploaders (Closes: #1139087)
Checksums-Sha1:
 9785105badb85be4c796ce08b4dcc5b36ff0e634 2181 bcel_6.13.0-1.dsc
 e57657d5de04effa428a5c7614b856adb0e1adb9 882728 bcel_6.13.0.orig.tar.xz
 5de482ceeb473734de436061a8e3ece835565fc8 7072 bcel_6.13.0-1.debian.tar.xz
 83e8fbb3b6783bd3c6c457588526db808d0b2e85 16114 bcel_6.13.0-1_source.buildinfo
Checksums-Sha256:
 f2aaa18cf01ad8115f3f53d5129600b63e03ff27f540af0d2e19e6ae9d596fae 2181 bcel_6.13.0-1.dsc
 e8d3f59bb1247ca3b164053d54488f819fc00495ecdefa0e9daf9a8af2294c8d 882728 bcel_6.13.0.orig.tar.xz
 4ecb2cc01636e2a8c37d6c7c79620812024e4571364ed2491d441d642f847d46 7072 bcel_6.13.0-1.debian.tar.xz
 9f49f97657ce549725e546946c3d14f1e2ed2019ab58e15e90ed843f8946a584 16114 bcel_6.13.0-1_source.buildinfo
Files:
 cacafe311315af97561e180bdd8c9180 2181 java optional bcel_6.13.0-1.dsc
 9396f944c823dd73d31974533324aa9d 882728 java optional bcel_6.13.0.orig.tar.xz
 4d05cb7c948cb13e350fd7d3b8fb5b9c 7072 java optional bcel_6.13.0-1.debian.tar.xz
 e8901f31351e61c760aa8eea23e844e2 16114 java optional bcel_6.13.0-1_source.buildinfo
-----BEGIN PGP SIGNATURE-----

iQJGBAEBCgAwFiEEuM5N4hCA3PkD4WxA9RPEGeS50KwFAmrfGPoSHGVib3VyZ0Bh
cGFjaGUub3JnAAoJEPUTxBnkudCsjP8QALBtkjncfWd05bjvwqktT0/ttDJf8fec
KToR37qsHOpL2yUNk4h2IEv2a/TMdiqNUFL+Bt84oaEaNhsIY2USdcPHAzD7qymW
C6kxw9JNQKD6N755m0pj0FLEZa4bWP5jxAHbloPtP143cm2GCgPuc125bZa7T3Te
c4LmO44lG8MiyYnMHGR9MOhLKqsWdXr1RqRKhWEwQFU6CjL7ErNjbQI4Xdiz6jl1
9AH3UBxcHkvlRPpQbP69PPjmMYIQCdmtQ6wVtqkUH8jN1Vi1ky7Okt9KjfgVLkgz
+7m5CRVknNwQ+QVRekvycqobSbasPvwV9Yr6yF/dn/cNKG9BZDq2dN1VPN7IBAr3
CUAM8MNZl3qDon4f3t3rJtNC9xrD9+SzQ88werSVTk9h9aN/deg+DW9ZLSjXjd+a
AhPczVb/gk1AOKh26WLo7zc0T979eBubxXeAS95Z9OLfFg+ZcYyTdydQKRwGNEOz
k8KORzoCB+daVh7nOsPFRDMQQLhSmc3HRBa5U6H/AVBYigGRC3eJGW7fx60SbQDs
GoVrr7jKo9aOnucf3tQwwyvyto9UijzCtl4+zZTqzdyDbQ7r4xGKj5EqqKjKmqDp
CsPJMK6c07tTZ8spNDS/iH2Pls4KpZDZPTlMdx0Bj2RsJS18TxoOd0Hf1+pdCCdV
d81JQ3Yo0XZU
=BpsH
-----END PGP SIGNATURE-----