https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89090

--- Comment #4 from Csaba Ráduly <csaba_22 at yahoo dot co.uk> ---
svn blame vector.tcc claims that the inner, apparently redundant "#if
__cplusplus >= 201103L" appeared at this change:

r265485 | glisse | 2018-10-25 15:03:13 +0200 (Thu, 25 Oct 2018) | 24 lines

Relocation (= move+destroy)

2018-10-25  Marc Glisse  <marc.gli...@inria.fr>

        PR libstdc++/87106
        * include/bits/alloc_traits.h (_S_construct, _S_destroy, construct,
        destroy): Add noexcept specification.
        * include/bits/allocator.h (construct, destroy): Likewise.
        * include/ext/alloc_traits.h (construct, destroy): Likewise.
        * include/ext/malloc_allocator.h (construct, destroy): Likewise.
        * include/ext/new_allocator.h (construct, destroy): Likewise.
        * include/bits/stl_uninitialized.h (__relocate_object_a, __relocate_a,
        __relocate_a_1): New functions.
        (__is_trivially_relocatable): New class.
        * include/bits/stl_vector.h (__use_relocate): New static member.
        * include/bits/vector.tcc (reserve, _M_realloc_insert,
        _M_default_append): Use __relocate_a.
        (reserve, _M_assign_aux, _M_realloc_insert, _M_fill_insert,
        _M_default_append, _M_range_insert): Move _GLIBCXX_ASAN_ANNOTATE_REINIT
        after _Destroy.
        * testsuite/23_containers/vector/modifiers/push_back/49836.cc:
        Replace CopyConsOnlyType with DelAnyAssign.

Reply via email to