aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorFrançois Dumont <fdumont@gcc.gnu.org>2012-08-03 19:34:49 +0000
committerFrançois Dumont <fdumont@gcc.gnu.org>2012-08-03 19:34:49 +0000
commit4d02a6956be69027ca357ef30b835bd1575580ac (patch)
tree955c2c5be91389fca2a91f51a44dfdd6ec1e006f /libstdc++-v3
parenta6de48da4d6b124bee8fbee74e0bfc482aab0081 (diff)
downloadgcc-4d02a6956be69027ca357ef30b835bd1575580ac.zip
gcc-4d02a6956be69027ca357ef30b835bd1575580ac.tar.gz
gcc-4d02a6956be69027ca357ef30b835bd1575580ac.tar.bz2
functions.h (__check_partition_lower_aux): Remove redundant comparison with pivot value.
2012-08-03 François Dumont <fdumont@gcc.gnu.org> * include/debug/functions.h (__check_partition_lower_aux): Remove redundant comparison with pivot value. (__check_partition_upper_aux): Likewise. From-SVN: r190134
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog6
-rw-r--r--libstdc++-v3/include/debug/functions.h80
2 files changed, 62 insertions, 24 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 3e94f24..546bdee 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,9 @@
+2012-08-03 François Dumont <fdumont@gcc.gnu.org>
+
+ * include/debug/functions.h (__check_partition_lower_aux): Remove
+ redundant comparison with pivot value.
+ (__check_partition_upper_aux): Likewise.
+
2012-08-03 Ollie Wild <aaw@google.com>
Richard Smith <richardsmith@google.com>
diff --git a/libstdc++-v3/include/debug/functions.h b/libstdc++-v3/include/debug/functions.h
index b2817d5..b59309e 100644
--- a/libstdc++-v3/include/debug/functions.h
+++ b/libstdc++-v3/include/debug/functions.h
@@ -354,8 +354,12 @@ namespace __gnu_debug
{
while (__first != __last && *__first < __value)
++__first;
- while (__first != __last && !(*__first < __value))
- ++__first;
+ if (__first != __last)
+ {
+ ++__first;
+ while (__first != __last && !(*__first < __value))
+ ++__first;
+ }
return __first == __last;
}
@@ -368,8 +372,10 @@ namespace __gnu_debug
const _Safe_iterator<_Iterator, _Sequence>& __last,
const _Tp& __value,
std::random_access_iterator_tag __tag)
- { return __check_partitioned_lower_aux(__first.base(), __last.base(),
- __value, __tag); }
+ {
+ return __check_partitioned_lower_aux(__first.base(), __last.base(),
+ __value, __tag);
+ }
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 270. Binary search requirements overly strict
@@ -378,8 +384,10 @@ namespace __gnu_debug
inline bool
__check_partitioned_lower(_ForwardIterator __first,
_ForwardIterator __last, const _Tp& __value)
- { return __check_partitioned_lower_aux(__first, __last, __value,
- std::__iterator_category(__first)); }
+ {
+ return __check_partitioned_lower_aux(__first, __last, __value,
+ std::__iterator_category(__first));
+ }
template<typename _ForwardIterator, typename _Tp>
inline bool
@@ -389,8 +397,12 @@ namespace __gnu_debug
{
while (__first != __last && !(__value < *__first))
++__first;
- while (__first != __last && __value < *__first)
- ++__first;
+ if (__first != __last)
+ {
+ ++__first;
+ while (__first != __last && __value < *__first)
+ ++__first;
+ }
return __first == __last;
}
@@ -403,15 +415,19 @@ namespace __gnu_debug
const _Safe_iterator<_Iterator, _Sequence>& __last,
const _Tp& __value,
std::random_access_iterator_tag __tag)
- { return __check_partitioned_upper_aux(__first.base(), __last.base(),
- __value, __tag); }
+ {
+ return __check_partitioned_upper_aux(__first.base(), __last.base(),
+ __value, __tag);
+ }
template<typename _ForwardIterator, typename _Tp>
inline bool
__check_partitioned_upper(_ForwardIterator __first,
_ForwardIterator __last, const _Tp& __value)
- { return __check_partitioned_upper_aux(__first, __last, __value,
- std::__iterator_category(__first)); }
+ {
+ return __check_partitioned_upper_aux(__first, __last, __value,
+ std::__iterator_category(__first));
+ }
template<typename _ForwardIterator, typename _Tp, typename _Pred>
inline bool
@@ -422,8 +438,12 @@ namespace __gnu_debug
{
while (__first != __last && bool(__pred(*__first, __value)))
++__first;
- while (__first != __last && !bool(__pred(*__first, __value)))
- ++__first;
+ if (__first != __last)
+ {
+ ++__first;
+ while (__first != __last && !bool(__pred(*__first, __value)))
+ ++__first;
+ }
return __first == __last;
}
@@ -437,8 +457,10 @@ namespace __gnu_debug
const _Safe_iterator<_Iterator, _Sequence>& __last,
const _Tp& __value, _Pred __pred,
std::random_access_iterator_tag __tag)
- { return __check_partitioned_lower_aux(__first.base(), __last.base(),
- __value, __pred, __tag); }
+ {
+ return __check_partitioned_lower_aux(__first.base(), __last.base(),
+ __value, __pred, __tag);
+ }
// Determine if a sequence is partitioned w.r.t. this element.
template<typename _ForwardIterator, typename _Tp, typename _Pred>
@@ -446,8 +468,10 @@ namespace __gnu_debug
__check_partitioned_lower(_ForwardIterator __first,
_ForwardIterator __last, const _Tp& __value,
_Pred __pred)
- { return __check_partitioned_lower_aux(__first, __last, __value, __pred,
- std::__iterator_category(__first)); }
+ {
+ return __check_partitioned_lower_aux(__first, __last, __value, __pred,
+ std::__iterator_category(__first));
+ }
template<typename _ForwardIterator, typename _Tp, typename _Pred>
inline bool
@@ -458,8 +482,12 @@ namespace __gnu_debug
{
while (__first != __last && !bool(__pred(__value, *__first)))
++__first;
- while (__first != __last && bool(__pred(__value, *__first)))
- ++__first;
+ if (__first != __last)
+ {
+ ++__first;
+ while (__first != __last && bool(__pred(__value, *__first)))
+ ++__first;
+ }
return __first == __last;
}
@@ -473,16 +501,20 @@ namespace __gnu_debug
const _Safe_iterator<_Iterator, _Sequence>& __last,
const _Tp& __value, _Pred __pred,
std::random_access_iterator_tag __tag)
- { return __check_partitioned_upper_aux(__first.base(), __last.base(),
- __value, __pred, __tag); }
+ {
+ return __check_partitioned_upper_aux(__first.base(), __last.base(),
+ __value, __pred, __tag);
+ }
template<typename _ForwardIterator, typename _Tp, typename _Pred>
inline bool
__check_partitioned_upper(_ForwardIterator __first,
_ForwardIterator __last, const _Tp& __value,
_Pred __pred)
- { return __check_partitioned_upper_aux(__first, __last, __value, __pred,
- std::__iterator_category(__first)); }
+ {
+ return __check_partitioned_upper_aux(__first, __last, __value, __pred,
+ std::__iterator_category(__first));
+ }
// Helper struct to detect random access safe iterators.
template<typename _Iterator>