[kaffe] Re: gcj 4.1.x issue

Mark Wielaard mark at klomp.org
Thu Dec 22 07:48:45 PST 2005


Hi Hanno,

On Thu, 2005-12-22 at 13:45 +0100, Hanno Meyer-Thurow wrote:
> Hi list!
> First time I send to this list so please be kind! ;)

Welcome. This message can almost not be an coincidence. So I am sharing
it with "that other" free runtime initiative "kaffe". (See CC.)

> I try to build apache-ant 1.6.2 with gcj 4.1.0-20051216 with some patches
> from fedora cvs for pr24899 pr25121 pr25432.
> 
> The source compiles but executing gij with the class files breaks.
> I narrowed down the error to a testcase I would say.
> Java file is attached.
> 
> # gcj -C DemuxOutputStream.java
> # gij -cp . DemuxOutputStream
> Exception in thread "main" java.lang.IllegalAccessError: DemuxOutputStream: DemuxOutputStream$BufferInfo.buffer
>    at DemuxOutputStream.main (DemuxOutputStream.java:18)

The kaffe hackers are tracking something that looks very similar. See
the thread starting at:
http://pogo.kaffe.org/pipermail/kaffe/2005-December/103649.html

There is a strange interplay between the class access modifiers which
are emitted by the compiler and how they are (supposed) to be
interpreted between the outclass and the inner class.

It seems only the outer class access flags should matter during runtime,
but the compiler should interpret and emit access flags for the inner
class attributes.

I have looked a bit around, but don't have a clear picture in my head
yet. There is also the following eclipse compiler bug (showing that
different compilers output different access flags and/or accessor
methods):
https://bugs.eclipse.org/bugs/show_bug.cgi?id=77473

Does someone have a complete clear picture? And can we add some shared
tests to mauve and/or jacks? This might actually be a little tricky
since it seems to interplay with the actual byte code compiler used to
emit the class files. So maybe we need a new module based on jasmin (can
the verify module help here?)

Cheers,

Mark
-------------- next part --------------
A non-text attachment was scrubbed...
Name: DemuxOutputStream.java
Type: text/x-java
Size: 522 bytes
Desc: not available
Url : http://kaffe.org/pipermail/kaffe/attachments/20051222/c9d6de26/attachment-0002.java 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://kaffe.org/pipermail/kaffe/attachments/20051222/c9d6de26/attachment-0002.pgp 


More information about the kaffe mailing list