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: libobjc - start reorganization of headers/API



Perhaps you could have a look at

	Defining a libobjc.so.2 ABI
       http://gcc.gnu.org/ml/gcc/2010-02/msg00340.html

That sounds like an excellent idea :-)


If you wait a few weeks, I'll complete my reorganization of the headers and the API, and then
you can review the (new) list of symbols and we can decide what to do.



while doing this.  We may need to change the libobjc.so version
depending on your changes and perhaps define an ABI only for the new
version.

Yes


We'll likely have to define a new ABI.

The problem is that in the traditional GNU libobjc API there are no private headers;
anything that needed to be declared in a header was put in the public headers by
the original authors (this seems horrific today, but I'd consider it a sign of the times and
of different sensibilities - but we'll obviously need to redo all the headers with a contemporary
approach). ;-)


So, it's hard to not remove symbols or not to break things as any change in the internals
will immediately reflect on the public symbols/API/ABI. (eg, the internal thread layer reorganization
I already committed has already caused _objc_mutex_lock() and similar private functions to disappear
from the public headers!).


If we have to break things, we may as well make a complete reorganized putting in all
the possible required changes for the foreseeable future in this release so that users
only have the upgrade shock once ;-)


But that is a lot of work.

Thanks


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