]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
basic_string.h (assign(const basic_string&)): Move out of line...
authorPaolo Carlini <pcarlini@suse.de>
Thu, 28 Oct 2004 01:04:35 +0000 (01:04 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Thu, 28 Oct 2004 01:04:35 +0000 (01:04 +0000)
2004-10-27  Paolo Carlini  <pcarlini@suse.de>

* include/bits/basic_string.h (assign(const basic_string&)):
Move out of line...
* include/bits/basic_string.tcc: ... here.

From-SVN: r89726

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/basic_string.h
libstdc++-v3/include/bits/basic_string.tcc

index a1b2f5c714d52b2271d8ca7e22bae64b9d7f26e9..3b151fed2dfa53aabc6d6a0d7d276e862c111657 100644 (file)
@@ -1,3 +1,9 @@
+2004-10-27  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.h (assign(const basic_string&)):
+       Move out of line...
+       * include/bits/basic_string.tcc: ... here.
+
 2004-10-27  Paolo Carlini  <pcarlini@suse.de>
 
        * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
index be340ff9420a31566599a86ab0f3bcb19e47d54a..e242d0fa191a66d6f69e7a8ee95cae8487b8a124 100644 (file)
@@ -858,18 +858,7 @@ namespace std
        *  @return  Reference to this string.
        */
       basic_string&
-      assign(const basic_string& __str)
-      {
-       if (_M_rep() != __str._M_rep())
-         {
-           // XXX MT
-           const allocator_type __a = this->get_allocator();
-           _CharT* __tmp = __str._M_rep()->_M_grab(__a, __str.get_allocator());
-           _M_rep()->_M_dispose(__a);
-           _M_data(__tmp);
-         }
-       return *this;
-      }
+      assign(const basic_string& __str);
 
       /**
        *  @brief  Set value to a substring of a string.
index b5f86459b2480a6f61518048b4e86c8ccd73d0b0..e72d07d6ec6a72dd25e1dc3540d3b2446a9e0084 100644 (file)
@@ -239,6 +239,22 @@ namespace std
     : _M_dataplus(_S_construct(__beg, __end, __a), __a)
     { }
 
+  template<typename _CharT, typename _Traits, typename _Alloc>
+    basic_string<_CharT, _Traits, _Alloc>&
+    basic_string<_CharT, _Traits, _Alloc>::
+    assign(const basic_string& __str)
+    {
+      if (_M_rep() != __str._M_rep())
+       {
+         // XXX MT
+         const allocator_type __a = this->get_allocator();
+         _CharT* __tmp = __str._M_rep()->_M_grab(__a, __str.get_allocator());
+         _M_rep()->_M_dispose(__a);
+         _M_data(__tmp);
+       }
+      return *this;
+    }
+
   template<typename _CharT, typename _Traits, typename _Alloc>
     basic_string<_CharT, _Traits, _Alloc>&
     basic_string<_CharT, _Traits, _Alloc>::