[libobjc] May I tweak objc-api.h?

Kaelin Colclasure kaelin@acm.org
Sat Feb 7 16:19:00 GMT 2004


On Feb 6, 2004, at 8:31 PM, Nicola Pero wrote:

>
>>> But the structs are used in GNUStep and which cannot change just
>>> support one version of
>>> gcc.  They have to support multiple versions of gcc.  I rescind my ok
>>> on this.  Knowing that
>>> programs will brake.  Also changing it conditional on __cplusplus is
>>> okay with me as it is
>>> okay with Alex.
>>
>> Hey, we're all supposed to be OO thinkers: How about we introduce an
>> accessor macro for this field, called say OBJC_SUPER_CLASS.
>
> That wouldn't help much since previous release of libobjc don't define 
> it.
> You'd still have to make a difference between new libojcs (where you 
> can
> use the macro) and old ones (where you can't use the macro).

#ifndef OBJC_SUPER_CLASS
#define OBJC_SUPER_CLASS(s) ((s)->class)
#endif

And, like magic, your code can consistently use the macro everywhere. 
:-)

> At that point, it's entirely equivalent but simpler to use .class for 
> old
> libobjcs and .super_class for new ones.

This reduces to an argument against accessors in general.

-- Kaelin



More information about the Gcc mailing list