On 20 July 2012 14:04, Jonathan Wakely wrote: > On 20 July 2012 12:43, Jakub Jelinek wrote: >> using a new std::list and std::pair, or the old one (well, std::pair is a >> bad example probably, std::string and std::list is good, what other types we >> are going to change?). > > I need to add a new virtual function and rename an existing virtual > function for a base class in <future>. That's for C++11 types only, > but doing the change will create an incompatibility with previous > releases. (I don't know whether it's better to just make that change > while we still call C++11 support experimental or to wait and use the > new type attribute to make it a different type with the "_cxx11" tag.) > > I think there are some changes needed to the hierarchy of exception > classes, to add std::system_error as a base class of std::ios_failure. > > I don't know if adding move semantics to iostream classes can be done > without ABI changes (I haven't looked into it.)
I've just remembered that std::reverse_iterator has been in need of an ABI change for years now, see LWG DR 198 and PR 51823.