On 25/05/2018 21:19, Ville Voutilainen wrote:
On 25 May 2018 at 22:16, Jonathan Wakely <jwak...@redhat.com> wrote:
Why is this patch removing _Compare() calls? That changes the
initialization
of _Compare from value-initialization to default-initialization, which
is a breaking change.

The _Rb_tree_key_compare base class will still value-initialize it:

      _Rb_tree_key_compare()
      _GLIBCXX_NOEXCEPT_IF(
         is_nothrow_default_constructible<_Key_compare>::value)
      : _M_key_compare()
      { }
Okay, no problem then.

Now applied, note that I eventually restored the explicit calls to _M_t() in the template iterator range constructors. We didn't talk about it and there is also such a call for the default constructors in pre-c++11 mode so I prefered to keep consistency.

François

Reply via email to