-
Bug
-
Resolution: Won't Fix
-
P3
-
None
-
6
-
sparc
-
solaris_10
FULL PRODUCT VERSION :
1.6.0_04 and up
ADDITIONAL OS VERSION INFORMATION :
OS independent
A DESCRIPTION OF THE PROBLEM :
In 1.5.0 this method behaved correctly. In 1.6.0_04 and beyond (I haven't tested with earlier versions) the method in question wrongly resets the opcode to 19 (0x13) at the end of it, causing an inconsistency between the expected size and the actual size on the class file.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Just use the BCEL classes to load a method that uses the ldc_w instruction and you will see that once a MethodGen is created, the InstructionList will show the ldc_w instruction with lenght 2 and opcode 19, which is what causes the problem on classes generated from such MethodGen instance.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The ldc_w instruction should've shown either length 2 and opcode 18 or length 3 and opcode 19.
ERROR MESSAGES/STACK TRACES THAT OCCUR :
JVM reporst a LinkageError while loading a class generated from the BCEL classes.
REPRODUCIBILITY :
This bug can be reproduced always.
Release Regression From : 5.0
The above release value was the last known release where this
bug was not reproducible. Since then there has been a regression.
1.6.0_04 and up
ADDITIONAL OS VERSION INFORMATION :
OS independent
A DESCRIPTION OF THE PROBLEM :
In 1.5.0 this method behaved correctly. In 1.6.0_04 and beyond (I haven't tested with earlier versions) the method in question wrongly resets the opcode to 19 (0x13) at the end of it, causing an inconsistency between the expected size and the actual size on the class file.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Just use the BCEL classes to load a method that uses the ldc_w instruction and you will see that once a MethodGen is created, the InstructionList will show the ldc_w instruction with lenght 2 and opcode 19, which is what causes the problem on classes generated from such MethodGen instance.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The ldc_w instruction should've shown either length 2 and opcode 18 or length 3 and opcode 19.
ERROR MESSAGES/STACK TRACES THAT OCCUR :
JVM reporst a LinkageError while loading a class generated from the BCEL classes.
REPRODUCIBILITY :
This bug can be reproduced always.
Release Regression From : 5.0
The above release value was the last known release where this
bug was not reproducible. Since then there has been a regression.