From aa863dca8bcd4410c4281b468d34e73319c8449f Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Mon, 2 Dec 2002 19:53:41 +0100 Subject: [PATCH] basic_string.tcc (basic_string::append(const basic_string&, size_type, size_type), [...]): Fully qualify min() with std::. 2002-12-02 Paolo Carlini * include/bits/basic_string.tcc (basic_string::append(const basic_string&, size_type, size_type), basic_string::compare(size_type, size_type, const basic_string&), basic_string::compare(size_type, size_type, const basic_string&, size_type, size_type), basic_string::compare(const _CharT*), basic_string:: compare(size_type, size_type, const _CharT*), basic_string::compare(size_type, size_type, const _CharT*, size_type), _S_string_copy(const basic_string&, _CharT*, typename _Alloc::size_type)): Fully qualify min() with std::. 2002-12-02 Paolo Carlini * include/bits/basic_string.tcc (basic_string::_S_construct(_InIter, _InIter, const _Alloc&, forward_iterator_tag)): Delay the declaration of __dnew, fully qualify distance() with std::. (basic_string::_M_replace_safe): Fully qualify distance() with std::. From-SVN: r59726 --- libstdc++-v3/ChangeLog | 22 +++++++++++++++ libstdc++-v3/include/bits/basic_string.tcc | 32 +++++++++++----------- 2 files changed, 38 insertions(+), 16 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 099c5337944..247de6bfc16 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,25 @@ +2002-12-02 Paolo Carlini + + * include/bits/basic_string.tcc + (basic_string::append(const basic_string&, size_type, + size_type), basic_string::compare(size_type, size_type, + const basic_string&), basic_string::compare(size_type, + size_type, const basic_string&, size_type, size_type), + basic_string::compare(const _CharT*), basic_string:: + compare(size_type, size_type, const _CharT*), + basic_string::compare(size_type, size_type, const _CharT*, + size_type), _S_string_copy(const basic_string&, _CharT*, + typename _Alloc::size_type)): Fully qualify min() with std::. + +2002-12-02 Paolo Carlini + + * include/bits/basic_string.tcc + (basic_string::_S_construct(_InIter, _InIter, const _Alloc&, + forward_iterator_tag)): Delay the declaration of __dnew, + fully qualify distance() with std::. + (basic_string::_M_replace_safe): Fully qualify distance() + with std::. + 2002-11-28 Phil Edwards PR libstdc++/8716 diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc index 4a22d896792..70dd991ea3e 100644 --- a/libstdc++-v3/include/bits/basic_string.tcc +++ b/libstdc++-v3/include/bits/basic_string.tcc @@ -137,14 +137,14 @@ namespace std _S_construct(_InIter __beg, _InIter __end, const _Alloc& __a, forward_iterator_tag) { - size_type __dnew = static_cast(distance(__beg, __end)); - if (__beg == __end && __a == _Alloc()) return _S_empty_rep()._M_refcopy(); // NB: Not required, but considered best practice. if (__builtin_expect(__beg == _InIter(), 0)) __throw_logic_error("attempt to create string with null pointer"); + + size_type __dnew = static_cast(std::distance(__beg, __end)); // Check for out_of_range and length_error exceptions. _Rep* __r = _Rep::_S_create(__dnew, __a); @@ -523,7 +523,7 @@ namespace std _M_replace_safe(iterator __i1, iterator __i2, _ForwardIter __k1, _ForwardIter __k2) { - size_type __dnew = static_cast(distance(__k1, __k2)); + size_type __dnew = static_cast(std::distance(__k1, __k2)); size_type __dold = __i2 - __i1; size_type __dmax = this->max_size(); @@ -578,7 +578,7 @@ namespace std // Iff appending itself, string needs to pre-reserve the // correct size so that _M_mutate does not clobber the // iterators formed here. - size_type __len = min(__str.size() - __pos, __n) + this->size(); + size_type __len = std::min(__str.size() - __pos, __n) + this->size(); if (__len > this->capacity()) this->reserve(__len); return _M_replace_safe(_M_iend(), _M_iend(), __str._M_check(__pos), @@ -848,8 +848,8 @@ namespace std if (__pos > __size) __throw_out_of_range("basic_string::compare"); - size_type __rsize= min(__size - __pos, __n); - size_type __len = min(__rsize, __osize); + size_type __rsize= std::min(__size - __pos, __n); + size_type __len = std::min(__rsize, __osize); int __r = traits_type::compare(_M_data() + __pos, __str.data(), __len); if (!__r) __r = __rsize - __osize; @@ -867,9 +867,9 @@ namespace std if (__pos1 > __size || __pos2 > __osize) __throw_out_of_range("basic_string::compare"); - size_type __rsize = min(__size - __pos1, __n1); - size_type __rosize = min(__osize - __pos2, __n2); - size_type __len = min(__rsize, __rosize); + size_type __rsize = std::min(__size - __pos1, __n1); + size_type __rosize = std::min(__osize - __pos2, __n2); + size_type __len = std::min(__rsize, __rosize); int __r = traits_type::compare(_M_data() + __pos1, __str.data() + __pos2, __len); if (!__r) @@ -885,7 +885,7 @@ namespace std { size_type __size = this->size(); size_type __osize = traits_type::length(__s); - size_type __len = min(__size, __osize); + size_type __len = std::min(__size, __osize); int __r = traits_type::compare(_M_data(), __s, __len); if (!__r) __r = __size - __osize; @@ -903,8 +903,8 @@ namespace std __throw_out_of_range("basic_string::compare"); size_type __osize = traits_type::length(__s); - size_type __rsize = min(__size - __pos, __n1); - size_type __len = min(__rsize, __osize); + size_type __rsize = std::min(__size - __pos, __n1); + size_type __len = std::min(__rsize, __osize); int __r = traits_type::compare(_M_data() + __pos, __s, __len); if (!__r) __r = __rsize - __osize; @@ -921,9 +921,9 @@ namespace std if (__pos > __size) __throw_out_of_range("basic_string::compare"); - size_type __osize = min(traits_type::length(__s), __n2); - size_type __rsize = min(__size - __pos, __n1); - size_type __len = min(__rsize, __osize); + size_type __osize = std::min(traits_type::length(__s), __n2); + size_type __rsize = std::min(__size - __pos, __n1); + size_type __len = std::min(__rsize, __osize); int __r = traits_type::compare(_M_data() + __pos, __s, __len); if (!__r) __r = __rsize - __osize; @@ -937,7 +937,7 @@ namespace std { typedef typename _Alloc::size_type size_type; size_type __strsize = __str.size(); - size_type __bytes = min(__strsize, __bufsiz - 1); + size_type __bytes = std::min(__strsize, __bufsiz - 1); _Traits::copy(__buf, __str.data(), __bytes); __buf[__bytes] = _CharT(); }