This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [objc-improvements] Synced in with mainline yet again...


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



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]