JDK-6354476 : (reflect) {Method, Constructor}.toString prints out inappropriate modifiers
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.lang:reflect
  • Affected Version: 5.0u6,6
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2005-11-22
  • Updated: 2021-05-06
  • Resolved: 2005-12-03
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6
6 b63Fixed
Related Reports
Duplicate :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
The modifier bit position for the bridge flag on a method is the same as the bit position for the volatile property of a field.  Currently if Method.toString is called on a bridge method the "volatile" property will inappropriately appear.  There is a similar overlap between the var-args and transient bits.

Comments
SUGGESTED FIX src/share/classes/java/lang/reflect>sccs sccsdiff -r1.52 -r1.53 Constructor.java ------- Constructor.java ------- 336c336 < int mod = getModifiers(); --- > int mod = getModifiers() & LANGUAGE_MODIFIERS; src/share/classes/java/lang/reflect>sccs sccsdiff -r1.52 -r1.53 Method.java ------- Method.java ------- 392c392 < * <tt>synchronized</tt> <tt>native</tt>. --- > * <tt>synchronized</tt>, <tt>native</tt>. 397c397 < int mod = getModifiers(); --- > int mod = getModifiers() & LANGUAGE_MODIFIERS;
23-11-2005

EVALUATION Should be fixed.
22-11-2005