Default std::vector<bool> default and move constructor

Jonathan Wakely jwakely@redhat.com
Thu Jun 15 11:07:00 GMT 2017


On 13/06/17 22:36 +0200, François Dumont wrote:
>On 01/06/2017 15:34, Jonathan Wakely wrote:
>>
>>I would expect the constructor to look like this:
>>
>>      _Bvector_impl()
>>      _GLIBCXX_NOEXCEPT_IF( noexcept(_Bit_alloc_type()) )
>>         : _Bit_alloc_type()
>>         { }
>>
>>What happens when you do that?
>>
>>
>>>      _Bvector_impl(const _Bit_alloc_type& __a)
>>>-    : _Bit_alloc_type(__a), _M_start(), _M_finish(), 
>>>_M_end_of_storage()
>>>+         _GLIBCXX_NOEXCEPT_IF( noexcept(_Bit_alloc_type(__a)) )
>>
>>Copying the allocator is not allowed to throw. You can use simply
>>_GLIBCXX_NOEXCEPT here.
>
>Now that we find out what was the problem with default/value 
>initialization of allocator I would like to re-submit this patch with 
>the correct constructor.
>
>Tested under Linux x86_64 normal mode.
>
>Ok to commit ?

OK, thanks.



More information about the Libstdc++ mailing list