Hi Marc,
On 09/15/2013 11:12 AM, Marc Glisse wrote:
I had to separate the constructor that takes an allocator from the
default constructor in debug/profile, since in release the noexcept
only applies to one of them (and the testsuite asserts that release
and debug agree on this). An alternative would be to make the release
vector default constructor conditionally noexcept (depending on the
allocator). Or to use explicit vector(const Allocator& = Allocator());
also in normal mode instead of splitting it in two.
Thanks a lot. Now I'm wondering if we shouldn't really do the latter:
the issue is, if I remember correctly, in C++11, at variance with C++98,
allocators aren't necessarily default constructible, thus by explicit
instantiatiation the user can easily tell whether that constructor is
split or not. What do you think?
Paolo.