The fixes regression from
r16-5845-g8a2e6590cc4a2f that added an move
assignment operator to the _Safe_node_sequence, and made the class both
non move and copy constructible (copy is deleted, move is not declared).
In consequence debug version of node containers, that define they copy
and move as defaulted, and inherit from above, have deleted copy and moves.
libstdc++-v3/ChangeLog:
* include/debug/safe_sequence.h
(_Safe_node_sequence::_Safe_node_sequence): Define as defaulted.
: public _Safe_sequence<_Sequence>
{
public:
- _GLIBCXX20_CONSTEXPR _Safe_node_sequence&
- operator=(const _Safe_node_sequence&) _GLIBCXX_NOEXCEPT
- {
- _M_invalidate_all();
- return *this;
- }
-
#if __cplusplus >= 201103L
+ _Safe_node_sequence() = default;
+ _Safe_node_sequence(_Safe_node_sequence&&) = default;
+ _Safe_node_sequence(_Safe_node_sequence const&) = default;
+
_GLIBCXX20_CONSTEXPR _Safe_node_sequence&
operator=(_Safe_node_sequence&& __x) noexcept
{
}
#endif
+ _GLIBCXX20_CONSTEXPR _Safe_node_sequence&
+ operator=(const _Safe_node_sequence&) _GLIBCXX_NOEXCEPT
+ {
+ _M_invalidate_all();
+ return *this;
+ }
+
protected:
_GLIBCXX20_CONSTEXPR void
_M_invalidate_all() const