This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ 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: libstdc++ PATCH to add abi tag to complex::real/imag


On 11/11/2012 06:55 AM, Jonathan Wakely wrote:
For std::list I assume we want the attribute on the type itself, not
just member functions, since its size changes.

Yes. Note that I believe for the list and string changes we want to change the default ABI for C++98 and C++11, not just C++11. And provide a way for users to select the old ABI if they need to pass string/list objects to and from previously compiled code.


As well as the existing incompatibilities, I need to add a new virtual
function to support returning future_status::deferred from
std::future::wait_{for,until}.  Is it appropriate to use the same
"cxx11" tag for that too, even though the existing implementation is
also "cxx11" because the type wasn't in C++98?   Or do we want to use
a different tag, such as "cxx11v2" or just "v2"?

If this is a C++11-only class, then I don't think we need a tag at all. I don't think we've been trying to maintain binary compatibility between major releases for C++11 code. The goal of all of this is to allow old C++98 code to coexist in the same running program with new C++11 code so long as they aren't trying to use the same string/list objects.


Jason


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