This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: Package-private access checking in GCJ 3.3
Hi,
On Mon, 2003-06-16 at 11:30, Ranjit Mathew wrote:
> > Ranjit> (BTW, we use the same bit for both ACC_SUPER and
> > Ranjit> ACC_SYNCHRONIZED and these are the only two that share a
> > Ranjit> bit - is this by design or is this an oversight?)
> >
> > Design. See java.lang.reflect.Modifier -- these values are specified
> > by Java, not us.
>
> *Except* for ACC_SUPER, everything else is there and has
> the same value as defined by GCJ - what does ACC_SUPER mean?
> Is it to specially flag references like "super.fooBar"?
See the (always informative) IKVM.NET weblog entry of Jun 02.
[...] To fix this, invokespecial was changed to search the class
hierarchy if the called class is a base class of the caller
(from the caller's base class on up), but only if the caller's
class has the ACC_SUPER bit set in the class' access_flags mask.
All Java compilers since JDK 1.1 always set the ACC_SUPER flag.
It's interesting to note that the current Sun JRE 1.4.1 still
honors a cleared ACC_SUPER flag.
http://weblog.ikvm.net/
Cheers,
Mark