]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
basic_string.tcc (basic_string(const basic_string&, size_type, size_type), [...]...
authorPaolo Carlini <pcarlini@suse.de>
Tue, 27 Jan 2004 10:46:36 +0000 (10:46 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Tue, 27 Jan 2004 10:46:36 +0000 (10:46 +0000)
2004-01-27  Paolo Carlini  <pcarlini@suse.de>

* include/bits/basic_string.tcc
(basic_string(const basic_string&, size_type, size_type),
basic_string(const basic_string&, size_type, size_type,
const _Alloc&)): Avoid unnecessarily constructing iterators.

From-SVN: r76696

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

index 91b866ea47d1b990e2f873183c66555ec960edda..b3a706fa44b2883ba08b596b28f0d94cf27c9b37 100644 (file)
@@ -1,3 +1,10 @@
+2004-01-27  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/basic_string.tcc
+       (basic_string(const basic_string&, size_type, size_type),
+       basic_string(const basic_string&, size_type, size_type,
+       const _Alloc&)): Avoid unnecessarily constructing iterators.
+
 2004-01-26  Paolo Carlini  <pcarlini@suse.de>
 
        * config/locale/generic/c_locale.cc: Fix throw messages
index 1e9d33e65c19aa65402f6fba309a5193e0716846..733a11d82334332cd8cd94a1b9ba37900b6a3b82 100644 (file)
@@ -207,10 +207,10 @@ namespace std
   template<typename _CharT, typename _Traits, typename _Alloc>
     basic_string<_CharT, _Traits, _Alloc>::
     basic_string(const basic_string& __str, size_type __pos, size_type __n)
-    : _M_dataplus(_S_construct(__str._M_ibegin()
+    : _M_dataplus(_S_construct(__str._M_data()
                               + __str._M_check(__pos,
                                                "basic_string::basic_string"),
-                              __str._M_ibegin() + __pos
+                              __str._M_data() + __pos 
                               + __str._M_limit(__pos, __n),
                               _Alloc()), _Alloc())
     { }
@@ -219,10 +219,10 @@ namespace std
     basic_string<_CharT, _Traits, _Alloc>::
     basic_string(const basic_string& __str, size_type __pos,
                 size_type __n, const _Alloc& __a)
-    : _M_dataplus(_S_construct(__str._M_ibegin()
+    : _M_dataplus(_S_construct(__str._M_data()
                               + __str._M_check(__pos,
                                                "basic_string::basic_string"),
-                              __str._M_ibegin() + __pos
+                              __str._M_data() + __pos
                               + __str._M_limit(__pos, __n), __a), __a)
     { }