On 21/11/13 18:32, John McCall wrote: > On Nov 21, 2013, at 12:24 AM, Anthony Williams > <[email protected]> wrote: >> On 20/11/13 01:57, Richard Smith wrote: >>> There are a few things in the current ABI which are known to be >>> suboptimal, but we cannot change because doing so would introduce an ABI >>> break. However, vendors sometimes get an opportunity to break their ABI >>> (or are defining a new ABI), and for some vendors, this is a very common >>> occurrence. To this end, I think it would be valuable for the ABI >>> document to describe what we might want to put in a 'Version 2' of the >>> ABI; that is, a set of changes that we recommend be made whenever a >>> vendor has a chance to introduce an ABI break. >> >>> Are there any other things that it would make sense to change in a >>> version 2 of the ABI? >> >> If people are willing to make an ABI change, it would be great if they >> could add in the necessary information to allow std::current_exception >> to take a copy of the exception rather than increasing the reference >> count on the existing exception. > > You should not expect that anybody is going to make an ABI change > to an existing platform.
I don't: that much was made quite clear at the WG21 meeting where this was discussed. However, I don't think it's unreasonable for version N+1 of a platform to extend the ABI in this way. Precompiled code written for version N would continue to run, but code compiled for version N+1 could take advantage of the new ABI. I expect I could come up with a change that worked nicer than my quick patch if I put some time into it. Isn't the point of a "version 2 ABI" that it is different to version 1? Richard introduced it above as "a set of changes that we recommend be made whenever a vendor has a chance to introduce an ABI break." This is a change I would like to see under such circumstances. Anthony -- Author of C++ Concurrency in Action http://www.stdthread.co.uk/book/ just::thread C++11 thread library http://www.stdthread.co.uk Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk 15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK. Company No. 5478976 _______________________________________________ cxx-abi-dev mailing list [email protected] http://sourcerytools.com/cgi-bin/mailman/listinfo/cxx-abi-dev
