2018-10-03 François Dumont <fdumont@gcc.gnu.org>
authorFrançois Dumont <fdumont@gcc.gnu.org>
Wed, 3 Oct 2018 05:50:01 +0000 (05:50 +0000)
committerFrançois Dumont <fdumont@gcc.gnu.org>
Wed, 3 Oct 2018 05:50:01 +0000 (05:50 +0000)
* include/debug/map.h
(map<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
(map<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
(map<>::insert(value_type&&)): Likewise.
(map<>::insert<>(_Pair&&)): Likewise.
(map<>::insert<>(const_iterator, _Pair&&)): Likewise.
(map<>::try_emplace): Likewise.
(map<>::insert_or_assign): Likewise.
(map<>::insert(node_type&&)): Likewise.
(map<>::insert(const_iterator, node_type&&)): Likewise.
(map<>::erase(const_iterator)): Likewise.
(map<>::erase(const_iterator, const_iterator)): Likewise.
* include/debug/multimap.h
(multimap<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
(multimap<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
(multimap<>::insert<>(_Pair&&)): Likewise.
(multimap<>::insert<>(const_iterator, _Pair&&)): Likewise.
(multimap<>::insert(node_type&&)): Likewise.
(multimap<>::insert(const_iterator, node_type&&)): Likewise.
(multimap<>::erase(const_iterator)): Likewise.
(multimap<>::erase(const_iterator, const_iterator)): Likewise.
* include/debug/set.h
(set<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
(set<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
(set<>::insert(value_type&&)): Likewise.
(set<>::insert<>(const_iterator, value_type&&)): Likewise.
(set<>::insert(const_iterator, node_type&&)): Likewise.
(set<>::erase(const_iterator)): Likewise.
(set<>::erase(const_iterator, const_iterator)): Likewise.
* include/debug/multiset.h
(multiset<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
(multiset<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
(multiset<>::insert<>(value_type&&)): Likewise.
(multiset<>::insert<>(const_iterator, value_type&&)): Likewise.
(multiset<>::insert(node_type&&)): Likewise.
(multiset<>::insert(const_iterator, node_type&&)): Likewise.
(multiset<>::erase(const_iterator)): Likewise.
(multiset<>::erase(const_iterator, const_iterator)): Likewise.

From-SVN: r264805

libstdc++-v3/ChangeLog
libstdc++-v3/include/debug/map.h
libstdc++-v3/include/debug/multimap.h
libstdc++-v3/include/debug/multiset.h
libstdc++-v3/include/debug/set.h

index 30ff00af1397c3654e550db395bd182af64860b2..fe0fbf7bbdc6ab6b2b8a8a90d2bd3775ddd34433 100644 (file)
@@ -1,3 +1,44 @@
+2018-10-03  François Dumont  <fdumont@gcc.gnu.org>
+
+       * include/debug/map.h
+       (map<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
+       (map<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
+       (map<>::insert(value_type&&)): Likewise.
+       (map<>::insert<>(_Pair&&)): Likewise.
+       (map<>::insert<>(const_iterator, _Pair&&)): Likewise.
+       (map<>::try_emplace): Likewise.
+       (map<>::insert_or_assign): Likewise.
+       (map<>::insert(node_type&&)): Likewise.
+       (map<>::insert(const_iterator, node_type&&)): Likewise.
+       (map<>::erase(const_iterator)): Likewise.
+       (map<>::erase(const_iterator, const_iterator)): Likewise.
+       * include/debug/multimap.h
+       (multimap<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
+       (multimap<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
+       (multimap<>::insert<>(_Pair&&)): Likewise.
+       (multimap<>::insert<>(const_iterator, _Pair&&)): Likewise.
+       (multimap<>::insert(node_type&&)): Likewise.
+       (multimap<>::insert(const_iterator, node_type&&)): Likewise.
+       (multimap<>::erase(const_iterator)): Likewise.
+       (multimap<>::erase(const_iterator, const_iterator)): Likewise.
+       * include/debug/set.h
+       (set<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
+       (set<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
+       (set<>::insert(value_type&&)): Likewise.
+       (set<>::insert<>(const_iterator, value_type&&)): Likewise.
+       (set<>::insert(const_iterator, node_type&&)): Likewise.
+       (set<>::erase(const_iterator)): Likewise.
+       (set<>::erase(const_iterator, const_iterator)): Likewise.
+       * include/debug/multiset.h
+       (multiset<>::emplace<>(_Args&&...)): Use C++11 direct initialization.
+       (multiset<>::emplace_hint<>(const_iterator, _Args&&...)): Likewise.
+       (multiset<>::insert<>(value_type&&)): Likewise.
+       (multiset<>::insert<>(const_iterator, value_type&&)): Likewise.
+       (multiset<>::insert(node_type&&)): Likewise.
+       (multiset<>::insert(const_iterator, node_type&&)): Likewise.
+       (multiset<>::erase(const_iterator)): Likewise.
+       (multiset<>::erase(const_iterator, const_iterator)): Likewise.
+
 2018-10-02  Marc Glisse  <marc.glisse@inria.fr>
 
        PR libstdc++/87258
index f4b4e8d2ad9fe2369e4bb11074fb2e71a05fd9bf..a885859592b117b1dedc020347a4d5683254a938 100644 (file)
@@ -240,8 +240,7 @@ namespace __debug
        emplace(_Args&&... __args)
        {
          auto __res = _Base::emplace(std::forward<_Args>(__args)...);
-         return std::pair<iterator, bool>(iterator(__res.first, this),
-                                          __res.second);
+         return { { __res.first, this }, __res.second };
        }
 
       template<typename... _Args>
@@ -249,9 +248,11 @@ namespace __debug
        emplace_hint(const_iterator __pos, _Args&&... __args)
        {
          __glibcxx_check_insert(__pos);
-         return iterator(_Base::emplace_hint(__pos.base(),
-                                             std::forward<_Args>(__args)...),
-                         this);
+         return
+           {
+             _Base::emplace_hint(__pos.base(), std::forward<_Args>(__args)...),
+             this
+           };
        }
 #endif
 
@@ -270,7 +271,7 @@ namespace __debug
       insert(value_type&& __x)
       {
        auto __res = _Base::insert(std::move(__x));
-       return { iterator(__res.first, this), __res.second };
+       return { { __res.first, this }, __res.second };
       }
 
       template<typename _Pair, typename = typename
@@ -279,10 +280,8 @@ namespace __debug
        std::pair<iterator, bool>
        insert(_Pair&& __x)
        {
-         std::pair<_Base_iterator, bool> __res
-           = _Base::insert(std::forward<_Pair>(__x));
-         return std::pair<iterator, bool>(iterator(__res.first, this),
-                                          __res.second);
+         auto __res = _Base::insert(std::forward<_Pair>(__x));
+         return { { __res.first, this }, __res.second };
        }
 #endif
 
@@ -320,8 +319,11 @@ namespace __debug
        insert(const_iterator __position, _Pair&& __x)
        {
          __glibcxx_check_insert(__position);
-         return iterator(_Base::insert(__position.base(),
-                                       std::forward<_Pair>(__x)), this);
+         return
+           {
+             _Base::insert(__position.base(), std::forward<_Pair>(__x)),
+             this
+           };
        }
 #endif
 
@@ -347,7 +349,7 @@ namespace __debug
         {
          auto __res = _Base::try_emplace(__k,
                                          std::forward<_Args>(__args)...);
-         return { iterator(__res.first, this), __res.second };
+         return { { __res.first, this }, __res.second };
        }
 
       template <typename... _Args>
@@ -356,7 +358,7 @@ namespace __debug
         {
          auto __res = _Base::try_emplace(std::move(__k),
                                          std::forward<_Args>(__args)...);
-         return { iterator(__res.first, this), __res.second };
+         return { { __res.first, this }, __res.second };
        }
 
       template <typename... _Args>
@@ -365,9 +367,12 @@ namespace __debug
                     _Args&&... __args)
         {
          __glibcxx_check_insert(__hint);
-         return iterator(_Base::try_emplace(__hint.base(), __k,
-                                            std::forward<_Args>(__args)...),
-                         this);
+         return
+           {
+             _Base::try_emplace(__hint.base(), __k,
+                                std::forward<_Args>(__args)...),
+             this
+           };
        }
 
       template <typename... _Args>
@@ -375,9 +380,12 @@ namespace __debug
         try_emplace(const_iterator __hint, key_type&& __k, _Args&&... __args)
         {
          __glibcxx_check_insert(__hint);
-         return iterator(_Base::try_emplace(__hint.base(), std::move(__k),
-                                            std::forward<_Args>(__args)...),
-                         this);
+         return
+           {
+             _Base::try_emplace(__hint.base(), std::move(__k),
+                                std::forward<_Args>(__args)...),
+             this
+           };
        }
 
       template <typename _Obj>
@@ -386,7 +394,7 @@ namespace __debug
        {
          auto __res = _Base::insert_or_assign(__k,
                                               std::forward<_Obj>(__obj));
-         return { iterator(__res.first, this), __res.second };
+         return { { __res.first, this }, __res.second };
        }
 
       template <typename _Obj>
@@ -395,7 +403,7 @@ namespace __debug
        {
          auto __res = _Base::insert_or_assign(std::move(__k),
                                               std::forward<_Obj>(__obj));
-         return { iterator(__res.first, this), __res.second };
+         return { { __res.first, this }, __res.second };
        }
 
       template <typename _Obj>
@@ -404,9 +412,12 @@ namespace __debug
                          const key_type& __k, _Obj&& __obj)
        {
          __glibcxx_check_insert(__hint);
-         return iterator(_Base::insert_or_assign(__hint.base(), __k,
-                                                 std::forward<_Obj>(__obj)),
-                         this);
+         return
+           {
+             _Base::insert_or_assign(__hint.base(), __k,
+                                     std::forward<_Obj>(__obj)),
+             this
+           };
        }
 
       template <typename _Obj>
@@ -414,10 +425,12 @@ namespace __debug
         insert_or_assign(const_iterator __hint, key_type&& __k, _Obj&& __obj)
         {
          __glibcxx_check_insert(__hint);
-         return iterator(_Base::insert_or_assign(__hint.base(),
-                                                 std::move(__k),
-                                                 std::forward<_Obj>(__obj)),
-                         this);
+         return
+           {
+             _Base::insert_or_assign(__hint.base(), std::move(__k),
+                                     std::forward<_Obj>(__obj)),
+             this
+           };
        }
 #endif // C++17
 
@@ -446,15 +459,15 @@ namespace __debug
       insert(node_type&& __nh)
       {
        auto __ret = _Base::insert(std::move(__nh));
-       iterator __pos = iterator(__ret.position, this);
-       return { __pos, __ret.inserted, std::move(__ret.node) };
+       return
+         { { __ret.position, this }, __ret.inserted, std::move(__ret.node) };
       }
 
       iterator
       insert(const_iterator __hint, node_type&& __nh)
       {
        __glibcxx_check_insert(__hint);
-       return iterator(_Base::insert(__hint.base(), std::move(__nh)), this);
+       return { _Base::insert(__hint.base(), std::move(__nh)), this };
       }
 
       using _Base::merge;
@@ -466,7 +479,7 @@ namespace __debug
       {
        __glibcxx_check_erase(__position);
        this->_M_invalidate_if(_Equal(__position.base()));
-       return iterator(_Base::erase(__position.base()), this);
+       return { _Base::erase(__position.base()), this };
       }
 
       iterator
@@ -512,7 +525,8 @@ namespace __debug
                                  ._M_iterator(__last, "last"));
            this->_M_invalidate_if(_Equal(__victim));
          }
-       return iterator(_Base::erase(__first.base(), __last.base()), this);
+
+       return { _Base::erase(__first.base(), __last.base()), this };
       }
 #else
       void
index 992ccf07536577d169f332deb8a06a925feee335..50500d66f7021464767c32d073e33cf4d399c7fe 100644 (file)
@@ -228,18 +228,18 @@ namespace __debug
       template<typename... _Args>
        iterator
        emplace(_Args&&... __args)
-       {
-         return iterator(_Base::emplace(std::forward<_Args>(__args)...), this);
-       }
+       { return { _Base::emplace(std::forward<_Args>(__args)...), this }; }
 
       template<typename... _Args>
        iterator
        emplace_hint(const_iterator __pos, _Args&&... __args)
        {
          __glibcxx_check_insert(__pos);
-         return iterator(_Base::emplace_hint(__pos.base(),
-                                             std::forward<_Args>(__args)...),
-                         this);
+         return
+           {
+             _Base::emplace_hint(__pos.base(), std::forward<_Args>(__args)...),
+             this
+           };
        }
 #endif
 
@@ -259,7 +259,7 @@ namespace __debug
                                                    _Pair&&>::value>::type>
        iterator
        insert(_Pair&& __x)
-       { return iterator(_Base::insert(std::forward<_Pair>(__x)), this); }
+       { return { _Base::insert(std::forward<_Pair>(__x)), this }; }
 #endif
 
 #if __cplusplus >= 201103L
@@ -296,8 +296,11 @@ namespace __debug
        insert(const_iterator __position, _Pair&& __x)
        {
          __glibcxx_check_insert(__position);
-         return iterator(_Base::insert(__position.base(),
-                                       std::forward<_Pair>(__x)), this);
+         return
+           {
+             _Base::insert(__position.base(), std::forward<_Pair>(__x)),
+             this
+           };
        }
 #endif
 
@@ -337,13 +340,13 @@ namespace __debug
 
       iterator
       insert(node_type&& __nh)
-      { return iterator(_Base::insert(std::move(__nh)), this); }
+      { return { _Base::insert(std::move(__nh)), this }; }
 
       iterator
       insert(const_iterator __hint, node_type&& __nh)
       {
        __glibcxx_check_insert(__hint);
-       return iterator(_Base::insert(__hint.base(), std::move(__nh)), this);
+       return { _Base::insert(__hint.base(), std::move(__nh)), this };
       }
 
       using _Base::merge;
@@ -355,7 +358,7 @@ namespace __debug
       {
        __glibcxx_check_erase(__position);
        this->_M_invalidate_if(_Equal(__position.base()));
-       return iterator(_Base::erase(__position.base()), this);
+       return { _Base::erase(__position.base()), this };
       }
 
       iterator
@@ -403,7 +406,8 @@ namespace __debug
                                  ._M_iterator(__last, "last"));
            this->_M_invalidate_if(_Equal(__victim));
          }
-       return iterator(_Base::erase(__first.base(), __last.base()), this);
+
+       return { _Base::erase(__first.base(), __last.base()), this };
       }
 #else
       void
index fa747ff9c36a2b7cfb8cda250db8942949f65e65..d292a14ca8c4ea0573942b4765c6356011ca1e79 100644 (file)
@@ -228,19 +228,18 @@ namespace __debug
       template<typename... _Args>
        iterator
        emplace(_Args&&... __args)
-       {
-         return iterator(_Base::emplace(std::forward<_Args>(__args)...),
-                         this);
-       }
+       { return { _Base::emplace(std::forward<_Args>(__args)...), this }; }
 
       template<typename... _Args>
        iterator
        emplace_hint(const_iterator __pos, _Args&&... __args)
        {
          __glibcxx_check_insert(__pos);
-         return iterator(_Base::emplace_hint(__pos.base(),
-                                             std::forward<_Args>(__args)...),
-                         this);
+         return
+           {
+             _Base::emplace_hint(__pos.base(), std::forward<_Args>(__args)...),
+             this
+           };
        }
 #endif
 
@@ -251,7 +250,7 @@ namespace __debug
 #if __cplusplus >= 201103L
       iterator
       insert(value_type&& __x)
-      { return iterator(_Base::insert(std::move(__x)), this); }
+      { return { _Base::insert(std::move(__x)), this }; }
 #endif
 
       iterator
@@ -266,8 +265,7 @@ namespace __debug
       insert(const_iterator __position, value_type&& __x)
       {
        __glibcxx_check_insert(__position);
-       return iterator(_Base::insert(__position.base(), std::move(__x)),
-                       this);
+       return { _Base::insert(__position.base(), std::move(__x)), this };
       }
 #endif
 
@@ -313,13 +311,13 @@ namespace __debug
 
       iterator
       insert(node_type&& __nh)
-      { return iterator(_Base::insert(std::move(__nh)), this); }
+      { return { _Base::insert(std::move(__nh)), this }; }
 
       iterator
       insert(const_iterator __hint, node_type&& __nh)
       {
        __glibcxx_check_insert(__hint);
-       return iterator(_Base::insert(__hint.base(), std::move(__nh)), this);
+       return { _Base::insert(__hint.base(), std::move(__nh)), this };
       }
 
       using _Base::merge;
@@ -331,7 +329,7 @@ namespace __debug
       {
        __glibcxx_check_erase(__position);
        this->_M_invalidate_if(_Equal(__position.base()));
-       return iterator(_Base::erase(__position.base()), this);
+       return { _Base::erase(__position.base()), this };
       }
 #else
       void
@@ -375,7 +373,8 @@ namespace __debug
                                  ._M_iterator(__last, "last"));
            this->_M_invalidate_if(_Equal(__victim));
          }
-       return iterator(_Base::erase(__first.base(), __last.base()), this);
+
+       return { _Base::erase(__first.base(), __last.base()), this };
       }
 #else
       void
index 6f1a5070b2b9c6445756d5bea496563063158266..ed75f0f174fe6da866b25157c28c8ebbd730e2ab 100644 (file)
@@ -229,8 +229,7 @@ namespace __debug
        emplace(_Args&&... __args)
        {
          auto __res = _Base::emplace(std::forward<_Args>(__args)...);
-         return std::pair<iterator, bool>(iterator(__res.first, this),
-                                          __res.second);
+         return { { __res.first, this }, __res.second };
        }
 
       template<typename... _Args>
@@ -238,9 +237,11 @@ namespace __debug
        emplace_hint(const_iterator __pos, _Args&&... __args)
        {
          __glibcxx_check_insert(__pos);
-         return iterator(_Base::emplace_hint(__pos.base(),
-                                             std::forward<_Args>(__args)...),
-                         this);
+         return
+           {
+             _Base::emplace_hint(__pos.base(), std::forward<_Args>(__args)...),
+             this
+           };
        }
 #endif
 
@@ -256,10 +257,8 @@ namespace __debug
       std::pair<iterator, bool>
       insert(value_type&& __x)
       {
-       std::pair<_Base_iterator, bool> __res
-         = _Base::insert(std::move(__x));
-       return std::pair<iterator, bool>(iterator(__res.first, this),
-                                        __res.second);
+       auto __res = _Base::insert(std::move(__x));
+       return { { __res.first, this }, __res.second };
       }
 #endif
 
@@ -275,8 +274,7 @@ namespace __debug
       insert(const_iterator __position, value_type&& __x)
       {
        __glibcxx_check_insert(__position);
-       return iterator(_Base::insert(__position.base(), std::move(__x)),
-                       this);
+       return { _Base::insert(__position.base(), std::move(__x)), this };
       }
 #endif
 
@@ -333,7 +331,7 @@ namespace __debug
       insert(const_iterator __hint, node_type&& __nh)
       {
        __glibcxx_check_insert(__hint);
-       return iterator(_Base::insert(__hint.base(), std::move(__nh)), this);
+       return { _Base::insert(__hint.base(), std::move(__nh)), this };
       }
 
       using _Base::merge;
@@ -345,7 +343,7 @@ namespace __debug
       {
        __glibcxx_check_erase(__position);
        this->_M_invalidate_if(_Equal(__position.base()));
-       return iterator(_Base::erase(__position.base()), this);
+       return { _Base::erase(__position.base()), this };
       }
 #else
       void
@@ -387,7 +385,8 @@ namespace __debug
                                  ._M_iterator(__last, "last"));
            this->_M_invalidate_if(_Equal(__victim));
          }
-       return iterator(_Base::erase(__first.base(), __last.base()), this);
+
+       return { _Base::erase(__first.base(), __last.base()), this };
       }
 #else
       void