On 12/31/2014 05:31 AM, Jonathan Wakely wrote: > On 31 December 2014 at 01:16, Ed Smith-Rowland wrote: >>>> N4280 - Non-member size() and more: __cpp_lib_nonmember_container_access >>>> 201411. >>> OK. I have another question about this one. It mentions that the new >>> declarations are available by including any of an even dozen headers. Does >>> that mean that our recommendations should specify this macro as being >>> defined by all of those headers? >> On second reading I'm not actually sure whether these things go into >> std:: or std::experimental::... >> So should they be pulled into <vector> or <experimental/vector>? > They've been added to the C++17 working paper, not to a TS, so they > are in namespace std and are in <vector> etc. not > <experimental/vector>. > Thank you for the clarification. Looking at nonmember begin and end it is clear that these new components are a continuation of these. These new members are included in exactly the same headers as begin and end.
I move we retroactively add __cpp_lib_nonmember_container_access ??? I think these came in with range-for. for std::begin(), std::end(). Even this might not be the last word on nonmember container access (wasn't someone going to add cbegin cend?) In answer to Clarks question I think we should say that this macro is included in all the container headers - annoying as it is. _______________________________________________ Features mailing list [email protected] http://www.open-std.org/mailman/listinfo/features
