]> gcc.gnu.org Git - gcc.git/commitdiff
[multiple changes]
authorPaolo Carlini <paolo@gcc.gnu.org>
Wed, 2 Nov 2005 10:27:54 +0000 (10:27 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Wed, 2 Nov 2005 10:27:54 +0000 (10:27 +0000)
2005-11-02  Thomas Kho  <tkho@ucla.edu>

PR libstdc++/23425
* include/bits/stl_vector.h (vector<>::clear): Open code
in terms of _Destroy.

2005-11-02  Paolo Carlini  <pcarlini@suse.de>

* include/bits/vector.tcc (vector<>::_M_fill_assign): Qualify fill_n.

From-SVN: r106379

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/stl_vector.h
libstdc++-v3/include/bits/vector.tcc

index 8b9d310ad37866d95e84403d3e60741869503a81..0a779b6b25744adee4d281d91e222336f536dd25 100644 (file)
@@ -1,3 +1,13 @@
+2005-11-02  Thomas Kho  <tkho@ucla.edu>
+
+       PR libstdc++/23425
+       * include/bits/stl_vector.h (vector<>::clear): Open code
+       in terms of _Destroy.
+
+2005-11-02  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/vector.tcc (vector<>::_M_fill_assign): Qualify fill_n.
+
 2005-11-01  Paolo Carlini  <pcarlini@suse.de>
 
        PR libstdc++/24595
index 94acec2fb2c3e2ab1fa55ee87a4c7613d98758e7..1fc59dd5bbe1cfe8e33a134b54ce61306711cc61 100644 (file)
@@ -742,7 +742,11 @@ namespace _GLIBCXX_STD
        */
       void
       clear()
-      { erase(begin(), end()); }
+      {
+       std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
+                     _M_get_Tp_allocator());
+       this->_M_impl._M_finish = this->_M_impl._M_start;
+      }
 
     protected:
       /**
index 9e0eeb91fcf242a75d07e95bd33371f8be27c062..3a9b66e1d1afb8fdfbe00ebf2bce77b09085eb21 100644 (file)
@@ -184,7 +184,7 @@ namespace _GLIBCXX_STD
          this->_M_impl._M_finish += __n - size();
        }
       else
-        erase(fill_n(begin(), __n, __val), end());
+        erase(std::fill_n(begin(), __n, __val), end());
     }
 
   template<typename _Tp, typename _Alloc>
This page took 0.083356 seconds and 5 git commands to generate.