Re: Distributed Objects between cats
Re: Distributed Objects between cats
- Subject: Re: Distributed Objects between cats
- From: email@hidden
- Date: Thu, 11 Aug 2005 15:01:51 +1000
You are correct.
I tried /usr/bin/g++-3.3 on Tiger and it generates (in the
__cat_inst_meth section) ...4nO...
whereas gcc4.0 produces ...4On...
Now: Is this a feature or a bug?
Unfortunately I'm pretty sure it's always been said that DO was
version-dependant (whether major MacOS release version, compiler
version, or whatever). As you've seen, it depends on compiler
constructs which can and do change from time to time.
Unfortunately DO is effectively dead - Apple don't support it, nor
have any interest in continuing it's existence. The odds of this
being "fixed" (i.e. worked around) are about nil to none.
What might be worth looking at, although I haven't checked it out
myself, is the GnuStep implementation of DO. It's not compatible
with Apple's implementation, because of fundamental differences in
how it works - which means it may just be immune to these version
issues.
Another thought is to override relevant methods on, say,
NSMethodSignature, to massage the signature as needed. I'm not sure
what the significance of swapping the O and the n is, but presumably
you could look for any of the "wrong" ordering (for a given
compiler), and convert it?
Of course, if you're deploying a new product, you can just use gcc
4.0 and avoid the issue.. for now. There's no reason to believe
nothing will break in the next major gcc version.
Wade Tregaskis (AIM/iChat, Yahoo, Gizmo & Skype: wadetregaskis, ICQ:
40056898, MSN: email@hidden, AV iChat & email:
email@hidden, Jabber: email@hidden)
-- Sed quis custodiet ipsos custodes?
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden