[SG10] Updates to SD-6

Ed Smith-Rowland 3dw4rd at verizon.net
Wed Dec 31 14:19:12 CET 2014


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.



More information about the Features mailing list