aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/ext
diff options
context:
space:
mode:
authorPaolo Carlini <pcarlini@suse.de>2007-05-07 20:36:40 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2007-05-07 20:36:40 +0000
commit360721e336dbcceb4254ffbc6fd06b655ef3a9ec (patch)
tree2485cb33bf88a0ca3266d40e3bd3c86595184e4c /libstdc++-v3/include/ext
parent25a5e75613af9aac60b3c5b6856d6b6819b1ccae (diff)
downloadgcc-360721e336dbcceb4254ffbc6fd06b655ef3a9ec.zip
gcc-360721e336dbcceb4254ffbc6fd06b655ef3a9ec.tar.gz
gcc-360721e336dbcceb4254ffbc6fd06b655ef3a9ec.tar.bz2
stl_algobase.h: Do not include <cstring>.
2007-05-07 Paolo Carlini <pcarlini@suse.de> * include/bits/stl_algobase.h: Do not include <cstring>. (copy(const _Tp*, const _Tp*, _Tp*), __copy_b(const _Tp*, const _Tp*, _Tp*)): Use __builtin_memmove. (__fill_aux): Use __builtin_memset. (equal(const _Tp*, const _Tp*, const _Tp*), lexicographical_compare(const unsigned char*, const unsigned char*, const unsigned char*, const unsigned char*)): Use __builtin_memcmp. * include/bits/valarray_array.h: Do not include <cstring>. (_Array_default_ctor<, true>::_S_do_it): Use __builtin_memset. (_Array_copy_ctor<, true>::_S_do_it, _Array_copier<, true>::_S_do_it): Use __builtin_memcpy. * include/ext/algorithm (__lexicographical_compare_3way(const unsigned char*, const unsigned char*, const unsigned char*, const unsigned char*)): Use __builtin_memcmp. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Adjust dg-error line number. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. From-SVN: r124511
Diffstat (limited to 'libstdc++-v3/include/ext')
-rw-r--r--libstdc++-v3/include/ext/algorithm6
1 files changed, 4 insertions, 2 deletions
diff --git a/libstdc++-v3/include/ext/algorithm b/libstdc++-v3/include/ext/algorithm
index 712a4ed..10ca58a 100644
--- a/libstdc++-v3/include/ext/algorithm
+++ b/libstdc++-v3/include/ext/algorithm
@@ -1,6 +1,7 @@
// Algorithm extensions -*- C++ -*-
-// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -161,7 +162,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
{
const ptrdiff_t __len1 = __last1 - __first1;
const ptrdiff_t __len2 = __last2 - __first2;
- const int __result = std::memcmp(__first1, __first2, min(__len1, __len2));
+ const int __result = __builtin_memcmp(__first1, __first2,
+ min(__len1, __len2));
return __result != 0 ? __result
: (__len1 == __len2 ? 0 : (__len1 < __len2 ? -1 : 1));
}