[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: incompatibilities between base and libobjc2
From: |
Richard Frith-Macdonald |
Subject: |
Re: incompatibilities between base and libobjc2 |
Date: |
Wed, 8 Sep 2010 10:40:09 +0100 |
On 6 Sep 2010, at 23:15, David Chisnall wrote:
>
>> - NSObject.h uses a TypedStream class, not present in libobjc2. (for read:
>> and write: methods which are commented out). It looks like the TypedStream
>> stuff has been unused for a long time, maybe it can be removed from NSObject?
>
> Hmm, I thought these were conditionally compiled. I think they can probably
> go - they're for legacy compatibility with some really ancient stuff - but I
> don't want to be the one to delete them...
I hid those methods and removed the include of the header.
>> - Source/GSPrivate.h uses "struct objc_category" and "Category" which are
>> not exposed by libobjc2. Not sure what to do for these..
>
>
> They are not exposed because they are an implementation detail that should
> not be touched by anything except the compiler and the runtime. Why does
> GNUstep think that it needs them?
The category type is used for one of the arguments to the callback function
called by the runtime when code is loaded from a bundle ... NSBundle needs the
callback to record the classes which have been loaded, but I think the category
argument is used only to determine whether a class or a category is being
loaded. Possibly libobjc2 might want to implement some different mechanism for
letting NSBundle know what classes are loaded.