Commit 4d39d873 by Paolo Carlini Committed by Paolo Carlini

basic_string.h (replace(iterator, iterator, const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.

2004-01-26  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.h (replace(iterator, iterator,
	const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
	(replace(iterator, iterator, const _CharT*)): Ditto.
	(replace(iterator, iterator, const _CharT*, size_type)):
	Add missing _GLIBCXX_DEBUG_PEDASSERT.

From-SVN: r76630
parent a7bba6ca
2004-01-26 Paolo Carlini <pcarlini@suse.de> 2004-01-26 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.h (replace(iterator, iterator,
const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
(replace(iterator, iterator, const _CharT*)): Ditto.
(replace(iterator, iterator, const _CharT*, size_type)):
Add missing _GLIBCXX_DEBUG_PEDASSERT.
2004-01-26 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (replace(size_type, * include/bits/basic_string.tcc (replace(size_type,
size_type, const _CharT*, size_type)): Implement optimized size_type, const _CharT*, size_type)): Implement optimized
in-place algorithm for non-overlapping ranges. in-place algorithm for non-overlapping ranges.
......
...@@ -1209,11 +1209,7 @@ namespace std ...@@ -1209,11 +1209,7 @@ namespace std
*/ */
basic_string& basic_string&
replace(iterator __i1, iterator __i2, const basic_string& __str) replace(iterator __i1, iterator __i2, const basic_string& __str)
{ { return this->replace(__i1, __i2, __str._M_data(), __str.size()); }
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
return this->replace(__i1, __i2, __str._M_data(), __str.size());
}
/** /**
* @brief Replace range of characters with C substring. * @brief Replace range of characters with C substring.
...@@ -1230,9 +1226,12 @@ namespace std ...@@ -1230,9 +1226,12 @@ namespace std
* change if an error is thrown. * change if an error is thrown.
*/ */
basic_string& basic_string&
replace(iterator __i1, iterator __i2, replace(iterator __i1, iterator __i2, const _CharT* __s, size_type __n)
const _CharT* __s, size_type __n) {
{ return this->replace(__i1 - _M_ibegin(), __i2 - __i1, __s, __n); } _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
return this->replace(__i1 - _M_ibegin(), __i2 - __i1, __s, __n);
}
/** /**
* @brief Replace range of characters with C string. * @brief Replace range of characters with C string.
...@@ -1250,8 +1249,6 @@ namespace std ...@@ -1250,8 +1249,6 @@ namespace std
basic_string& basic_string&
replace(iterator __i1, iterator __i2, const _CharT* __s) replace(iterator __i1, iterator __i2, const _CharT* __s)
{ {
_GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() <= __i1 && __i1 <= __i2
&& __i2 <= _M_iend());
__glibcxx_requires_string(__s); __glibcxx_requires_string(__s);
return this->replace(__i1, __i2, __s, traits_type::length(__s)); return this->replace(__i1, __i2, __s, traits_type::length(__s));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment