On 12 February 2016 at 18:57, Nicol Bolas <
jmck...@gmail.com> wrote:
> On Friday, February 12, 2016 at 7:12:19 AM UTC-5,
d.n.i...@gmail.com wrote:
>>
>> In C++, we have std::{c, r}begin/end(x), std::size(x) and std::empty(x) as
>> a free functions,
>
>
> No, we don't. The Ranges TS may eventually provide such entrypoints. But the
> only interfaces that C++14 has are `(c)begin/end`.
Those functions are in the current C++ working draft. Unless someone
makes a good
case for removal, C++17 will have them. The libstdc++ that will come out with
gcc 6 will ship them.
>> But there aren't (and aren't proposed, as I know) std::back/front(x)
>> functions with respective meanings. Isn't it a defect?
No, that's an extension.
> Defects are generally:
> 1) The spec being self-contradictory.
> 2) The spec not specifying behavior for certain cases.
...and the spec being simply incorrect in other ways, but not for
lacking functionality
some user would really really want.
> Something you think ought to be there which isn't is not a defect; it's a
> proposal.
Exactly.