diff options
Diffstat (limited to 'libstdc++-v3/include/debug/list')
| -rw-r--r-- | libstdc++-v3/include/debug/list | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/libstdc++-v3/include/debug/list b/libstdc++-v3/include/debug/list index 7ab0bddff99..312aeebef92 100644 --- a/libstdc++-v3/include/debug/list +++ b/libstdc++-v3/include/debug/list @@ -123,6 +123,10 @@ namespace __debug list(list&& __x) : _Base(std::forward<list>(__x)), _Safe_base() { this->_M_swap(__x); } + + list(initializer_list<value_type> __l, + const allocator_type& __a = allocator_type()) + : _Base(__l, __a), _Safe_base() { } #endif ~list() { } @@ -144,6 +148,21 @@ namespace __debug swap(__x); return *this; } + + list& + operator=(initializer_list<value_type> __l) + { + static_cast<_Base&>(*this) = __l; + this->_M_invalidate_all(); + return *this; + } + + void + assign(initializer_list<value_type> __l) + { + _Base::assign(__l); + this->_M_invalidate_all(); + } #endif template<class _InputIterator> @@ -331,6 +350,13 @@ namespace __debug iterator insert(iterator __position, _Tp&& __x) { return emplace(__position, std::move(__x)); } + + void + insert(iterator __p, initializer_list<value_type> __l) + { + __glibcxx_check_insert(__p); + _Base::insert(__p, __l); + } #endif void |

