[cfe-dev] [libc++] Why doesn't libc++ define std::vector<bool>::const_reference as bool?

Hubert Tong via cfe-dev cfe-dev at lists.llvm.org
Tue Nov 14 15:20:50 PST 2017


On Tue, Nov 14, 2017 at 6:13 PM, Eric Fiselier via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> Unless I'm mis-reading the spec, `vector<bool>::const_reference` is
> implementation defined. Not bool. See [vector.bool]
> <http://eel.is/c++draft/vector.bool>.
>
It says:

using const_reference        = bool;




>
> /Eric
>
> On Tue, Nov 14, 2017 at 6:39 AM, Mikhail Maltsev via cfe-dev <
> cfe-dev at lists.llvm.org> wrote:
>
>> Hi. According to the C++ Standard (section [vector.bool]),
>> std::vector<bool>::const_reference should be defined as bool. libc++
>> defines it as std::__1::__bit_const_reference<std::__1::vector<bool,
>> std::__1::allocator<bool>>>]. Is this divergence from the standard
>> intentional? If it is, what is the purpose?
>>
>> --
>> Regards,
>>    Mikhail Maltsev
>>
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>>
>>
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20171114/24cf54d2/attachment.html>


More information about the cfe-dev mailing list