libgcj maintenance for 4.0.x branch

David Daney ddaney@avtrex.com
Fri Apr 15 20:35:00 GMT 2005


Tom Tromey wrote:
>>>>>>"David" == David Daney <ddaney@avtrex.com> writes:
> 
> 
> David> How does this differ from the rules for C, C++ and the C++
> David> library?
> 
> David> If it is different, why?  And isn't it really some the SC
> David> should decide?
> 
> Perhaps the SC or the RM will decide, but we can provide a
> recommendation.  The message I've understood is that we're basically
> free to control our own destiny, as java is not release critical.
> 
> One reason things could be different for libgcj, as opposed to, say,
> libstdc++, is that we're in a different state of maturity.  Right now
> we're doing about one major release per year.  However, the class
> library is changing much more rapidly than this.

Fine with me.
> 
> The proposed rule here is actually fairly conservative, perhaps overly
> so.  "Link compatible" means that we can't add new non-static methods,
> for instance.  I take this to mean we won't even break (link-wise)
> things that users shouldn't be using -- say random classes in gnu.*.
> New packages and the like rarely cause trouble (apart from increasing
> size of libgcj.so).

The C++ ABI is too brittle for this rule I think.  It seems possible 
that the best (and perhaps only) way to fix some things will be to break 
backwards compatibility.  If we adhere to this we would be in a position 
of saying we cannot fix a regression because it would break the rule.

> 
> Starting with 4.1 I would like to see a much less conservative rule,
> namely that we only promise compatibility if you use
> -findirect-dispatch.  (And in a similar vein I'd like to do the Big
> Classpath Merge, so we can track the library more aggressively.)
> 
> In the 3.4 series we barely did anything after the first release.
> This caused a few complaints, but was generally appropriate, I
> thought, given our plans for 4.0.  Nowadays we're getting more users
> and it seems better to deliver something more up-to-date when
> possible.

Perhaps few complaints were made public.  I complain to myself about 
this often.  My current libgcj-3.4.3 has large portions back ported from 
4.0 (and large portions eliminated as well).

GCJ is becomming less of a toy.  That is good.

David Daney



More information about the Java mailing list