This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [objc-improvements] Synced in with mainline yet again...
- From: David Ayers <d dot ayers at inode dot at>
- To: Ziemowit Laski <zlaski at apple dot com>
- Cc: discuss-gnustep at gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Thu, 18 Sep 2003 01:10:29 +0200
- Subject: Re: [objc-improvements] Synced in with mainline yet again...
- References: <EA0EFE08-E88D-11D7-83D1-000393673036@apple.com>
Ziemowit Laski wrote:
On Tuesday, Sep 16, 2003, at 13:56 US/Pacific, David Ayers wrote:
While we are waiting on enlightenment on the contents of the branch :-),
These fall into two categories:
(1) Bug fixes (as evidenced by the numerous new test cases vs. mainline)
(2) Support for new Mac OS X (NeXT) runtime features, accessible via
-fobjc-exceptions, -fno-nil-receivers, -fzero-link and
-freplace-objc-classes,
all of which have already been documented in gcc/doc/invoke.texi. Test
cases are included (and made Darwin-specific when appropriate).
Indeed, gcc/doc/invoke.texi is informative:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?r1=1.314&r2=1.314.2.1&only_with_tag=objc-improvements-branch&f=h
So these 'improvements'
- C++/Java style exception handling
- Block synchronization
- optimizing code for guaranteed non-nil receivers
- ...
are pretty much all Apple Runtime exclusive. I guess it's up to us to
parse the compiler code, if we intend to support this for the GNU
runtime for compatibility. (Well I guess we could ignore the optimization.)
I think the branch also has some minor formal issues, but it doesn't
seem like the current maintainer will be blocking the merge for that.
I'll try to keep tabs on it by posting patches as much as time permits.
I've been hacking away on 'Class <Protocol>'. I'll be posting an RFC
with a prospective patch, but it seems the front end could use some
cleanup that goes a bit further than C90, but more in a separate post
once I'm satisfied with some of the edge cases.
I believe that Andreas Jaeger has already prepared an ISO-fying patch
for Objective-C, and Stan is currently working on putting this into
the objc-improvmenets-branch.
Yes, and a big 'Thank You' too the both of them, but note that I said
'some cleanup /that goes a bit further than/ C90'. (See the RFC...)
But while setting up the tests for the feature I noticed an ICE on
invalid code:
Please do file a Bugzilla. Better yet, when the merge to mainline is
complete, you can have a go at fixing this ICE, along with your 'Class
<Protocol>' work! :-)
Bug report http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12309 is open.
Well, I'm unaware of the merge policies, but this would be a regression
compared to the current mainline. So I guess it's up to us GNUsteppers
again to continue in the tradition of fixing regressions introduced by
merges of Apple Runtime only features into FSF GCC ;-) so stay tuned...
Cheers,
David