Closed as program error.
Error Message: When a base class B is extended by a subclass C and one of its public methods M is overridden, a call to C.M can incorrectly execute B.M, when the following conditions are met: - a third class defines F as a private static field of type B; - the field is modified by external code, via reflection, to point to an object of type C; - F.M is called in a hot loop. . Stack Trace: N/A .
This problem can be avoided by setting the JVM command-line option -Xjit:disablelookahead.
The JIT compiler attempted to optimize the hot call by devirtualizing the call to M, but its analysis resulted in an incorrect type for the private static field F when it could be modified via reflection.
This defect will be fixed in: 6.0.1 SR3 7.0.0 SR2 6.0.0 SR11 5.0.0 SR14 . The JIT compiler has been updated to perform the type analysis correctly.
Reported component name
JAVA 5 JIT
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
JAVA 5 JIT
Fixed component ID
Applicable component levels
Rate this page:
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.