Unless I'm going completely mad, this is not valid code. $ cat temp.java class x { int i; } class temp { int foo() { return x.i; } } $ gcj -O2 -S temp.java $ echo $? 0 I think gcj needs more people using it for real development - it's actually fairly solid on code that compiles, it's just the typos that confuse it.
This is a dup of bug 1333 which is fixed on the mainline. *** This bug has been marked as a duplicate of 1333 ***
Okay I looked at this again and this is not a dup. The problem is that gcj is accepting x.i (and turns it into the offset of i in x and uses that offset on this).
Actually now on the mainline it does: ((struct x *)this)->i which is just plainly wrong.
*** Bug 16677 has been marked as a duplicate of this bug. ***
Shouldn't this block bug 18131?
(In reply to comment #5) > Shouldn't this block bug 18131? Yes I must have missed this bug when creating that meta-bug.
*** Bug 22496 has been marked as a duplicate of this bug. ***
All gcj front end bugs have been fixed by the gcj-eclipse branch merge. I'm mass-closing the affected PRs. If you believe one of these was closed in error, please reopen it with a note explaining why. Thanks.