On 15 March 2014 14:46, Ed Smith-Rowland wrote: > I'm resending this because I forgot to dupe to gcc-patches and I'd like one > thread. > > This should be pure commentary and documentation. > > I hope I got all these. I grepped for DR and added > _GLIBCXX_RESOLVE_LIB_DEFECTS where it seemed needed. > I did not add in cases where DR mentions were more commentary. > > Then I added the new _GLIBCXX_RESOLVE_LIB_DEFECTS to the xml intro page. > > OK? Can anyone think of one I left out?
In many of these cases I'd actually prefer to remove the comment mentioning a DR, rather than add the RESOLVE_LIB_DEFECTS marker. For example: DR 1204: this says we don't need to check for self-move-assignment. It applies to every move assignment operator in the library. It is not a defect against C++03, and the resolution is part of the final C++11 standard, so I don't think we should document that we implement it. DR 1261: another one with "C++11" status, meaning it was included in the C++11 standard, and this one also isn't relevant to C++03, so of course we implement it, and we shouldn't even mention it in comments or docs. DR 675, DR 776: these aren't relevant to C++03, and are part of C++11 (since the CD1 draft) So I think adding RESOLVE_LIB_DEFECTS is the wrong thing to do, I'd rather not touch them. Personally I'm in favour of completely remove any mention of DRs that are fixes to C++0x drafts, not post-C++11 fixes, but that might be more controversial.