mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-30 23:35:00 +08:00
PR libstdc++/28080 (partial)
2007-02-18 Paolo Carlini <pcarlini@suse.de> PR libstdc++/28080 (partial) * include/bits/stl_algobase.h: Do not include <climits>, use std::numeric_limits. * include/bits/stl_bvector.h: Use __CHAR_BIT__. * config/locale/gnu/codecvt_members.cc: Include <climits>. * config/locale/generic/codecvt_members.cc: Likewise. * include/std/string: Do not include <algorithm>; do not include <memory>, include <bits/allocator.h> instead. * include/ext/vstring_fwd.h: Likewise. * include/ext/vstring_util.h: Do not include <algorithm>. * include/tr1/hashtable_policy.h: Include <algorithm>. * testsuite/21_strings/basic_string/replace/char/1.cc: Likewise. * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise. * testsuite/23_containers/bitset/cons/1.cc: Likewise. * testsuite/util/testsuite_character.h: Likewise. * config/locale/gnu/codecvt_members.cc: Also include <cstdlib>, for MB_CUR_MAX. * config/locale/generic/codecvt_members.cc: Likewise. From-SVN: r122089
This commit is contained in:
parent
27a9b99d08
commit
f56fe8ff92
@ -1,3 +1,25 @@
|
|||||||
|
2007-02-18 Paolo Carlini <pcarlini@suse.de>
|
||||||
|
|
||||||
|
PR libstdc++/28080 (partial)
|
||||||
|
* include/bits/stl_algobase.h: Do not include <climits>, use
|
||||||
|
std::numeric_limits.
|
||||||
|
* include/bits/stl_bvector.h: Use __CHAR_BIT__.
|
||||||
|
* config/locale/gnu/codecvt_members.cc: Include <climits>.
|
||||||
|
* config/locale/generic/codecvt_members.cc: Likewise.
|
||||||
|
* include/std/string: Do not include <algorithm>; do not include
|
||||||
|
<memory>, include <bits/allocator.h> instead.
|
||||||
|
* include/ext/vstring_fwd.h: Likewise.
|
||||||
|
* include/ext/vstring_util.h: Do not include <algorithm>.
|
||||||
|
* include/tr1/hashtable_policy.h: Include <algorithm>.
|
||||||
|
* testsuite/21_strings/basic_string/replace/char/1.cc: Likewise.
|
||||||
|
* testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise.
|
||||||
|
* testsuite/23_containers/bitset/cons/1.cc: Likewise.
|
||||||
|
* testsuite/util/testsuite_character.h: Likewise.
|
||||||
|
|
||||||
|
* config/locale/gnu/codecvt_members.cc: Also include <cstdlib>,
|
||||||
|
for MB_CUR_MAX.
|
||||||
|
* config/locale/generic/codecvt_members.cc: Likewise.
|
||||||
|
|
||||||
2007-02-16 Paolo Carlini <pcarlini@suse.de>
|
2007-02-16 Paolo Carlini <pcarlini@suse.de>
|
||||||
|
|
||||||
Revert.
|
Revert.
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// std::codecvt implementation details, generic version -*- C++ -*-
|
// std::codecvt implementation details, generic version -*- C++ -*-
|
||||||
|
|
||||||
// Copyright (C) 2002, 2005 Free Software Foundation, Inc.
|
// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007
|
||||||
|
// Free Software Foundation, Inc.
|
||||||
//
|
//
|
||||||
// This file is part of the GNU ISO C++ Library. This library is free
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -34,6 +35,8 @@
|
|||||||
// Written by Benjamin Kosnik <bkoz@redhat.com>
|
// Written by Benjamin Kosnik <bkoz@redhat.com>
|
||||||
|
|
||||||
#include <locale>
|
#include <locale>
|
||||||
|
#include <cstdlib> // For MB_CUR_MAX
|
||||||
|
#include <climits> // For MB_LEN_MAX
|
||||||
|
|
||||||
_GLIBCXX_BEGIN_NAMESPACE(std)
|
_GLIBCXX_BEGIN_NAMESPACE(std)
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// std::codecvt implementation details, GNU version -*- C++ -*-
|
// std::codecvt implementation details, GNU version -*- C++ -*-
|
||||||
|
|
||||||
// Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
|
// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007
|
||||||
|
// Free Software Foundation, Inc.
|
||||||
//
|
//
|
||||||
// This file is part of the GNU ISO C++ Library. This library is free
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -34,6 +35,8 @@
|
|||||||
// Written by Benjamin Kosnik <bkoz@redhat.com>
|
// Written by Benjamin Kosnik <bkoz@redhat.com>
|
||||||
|
|
||||||
#include <locale>
|
#include <locale>
|
||||||
|
#include <cstdlib> // For MB_CUR_MAX
|
||||||
|
#include <climits> // For MB_LEN_MAX
|
||||||
#include <bits/c++locale_internal.h>
|
#include <bits/c++locale_internal.h>
|
||||||
|
|
||||||
_GLIBCXX_BEGIN_NAMESPACE(std)
|
_GLIBCXX_BEGIN_NAMESPACE(std)
|
||||||
|
@ -65,13 +65,13 @@
|
|||||||
#include <bits/c++config.h>
|
#include <bits/c++config.h>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
#include <cwchar>
|
#include <cwchar>
|
||||||
#include <climits>
|
|
||||||
#include <cstdlib>
|
#include <cstdlib>
|
||||||
#include <cstddef>
|
#include <cstddef>
|
||||||
#include <iosfwd>
|
#include <iosfwd>
|
||||||
#include <bits/stl_pair.h>
|
#include <bits/stl_pair.h>
|
||||||
#include <bits/cpp_type_traits.h>
|
#include <bits/cpp_type_traits.h>
|
||||||
#include <ext/type_traits.h>
|
#include <ext/type_traits.h>
|
||||||
|
#include <limits>
|
||||||
#include <bits/stl_iterator_base_types.h>
|
#include <bits/stl_iterator_base_types.h>
|
||||||
#include <bits/stl_iterator_base_funcs.h>
|
#include <bits/stl_iterator_base_funcs.h>
|
||||||
#include <bits/stl_iterator.h>
|
#include <bits/stl_iterator.h>
|
||||||
@ -328,7 +328,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
|
|||||||
__copy_aux(const _CharT*, const _CharT*, ostreambuf_iterator<_CharT>);
|
__copy_aux(const _CharT*, const _CharT*, ostreambuf_iterator<_CharT>);
|
||||||
|
|
||||||
template<typename _CharT>
|
template<typename _CharT>
|
||||||
typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value, _CharT*>::__type
|
typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
|
||||||
|
_CharT*>::__type
|
||||||
__copy_aux(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
|
__copy_aux(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
|
||||||
_CharT*);
|
_CharT*);
|
||||||
|
|
||||||
@ -979,17 +980,16 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
|
|||||||
__glibcxx_requires_valid_range(__first1, __last1);
|
__glibcxx_requires_valid_range(__first1, __last1);
|
||||||
__glibcxx_requires_valid_range(__first2, __last2);
|
__glibcxx_requires_valid_range(__first2, __last2);
|
||||||
|
|
||||||
#if CHAR_MAX == SCHAR_MAX
|
if (std::numeric_limits<char>::is_signed)
|
||||||
return std::lexicographical_compare((const signed char*) __first1,
|
return std::lexicographical_compare((const signed char*) __first1,
|
||||||
(const signed char*) __last1,
|
(const signed char*) __last1,
|
||||||
(const signed char*) __first2,
|
(const signed char*) __first2,
|
||||||
(const signed char*) __last2);
|
(const signed char*) __last2);
|
||||||
#else /* CHAR_MAX == SCHAR_MAX */
|
else
|
||||||
return std::lexicographical_compare((const unsigned char*) __first1,
|
return std::lexicographical_compare((const unsigned char*) __first1,
|
||||||
(const unsigned char*) __last1,
|
(const unsigned char*) __last1,
|
||||||
(const unsigned char*) __first2,
|
(const unsigned char*) __first2,
|
||||||
(const unsigned char*) __last2);
|
(const unsigned char*) __last2);
|
||||||
#endif /* CHAR_MAX == SCHAR_MAX */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_GLIBCXX_END_NAMESPACE
|
_GLIBCXX_END_NAMESPACE
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
// vector<bool> specialization -*- C++ -*-
|
// vector<bool> specialization -*- C++ -*-
|
||||||
|
|
||||||
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006
|
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
|
||||||
// Free Software Foundation, Inc.
|
// Free Software Foundation, Inc.
|
||||||
//
|
//
|
||||||
// This file is part of the GNU ISO C++ Library. This library is free
|
// This file is part of the GNU ISO C++ Library. This library is free
|
||||||
@ -65,7 +65,7 @@
|
|||||||
_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
|
_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
|
||||||
|
|
||||||
typedef unsigned long _Bit_type;
|
typedef unsigned long _Bit_type;
|
||||||
enum { _S_word_bit = int(CHAR_BIT * sizeof(_Bit_type)) };
|
enum { _S_word_bit = int(__CHAR_BIT__ * sizeof(_Bit_type)) };
|
||||||
|
|
||||||
struct _Bit_reference
|
struct _Bit_reference
|
||||||
{
|
{
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
// Versatile string forward -*- C++ -*-
|
// Versatile string forward -*- C++ -*-
|
||||||
|
|
||||||
// Copyright (C) 2005 Free Software Foundation, Inc.
|
// Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
|
||||||
//
|
//
|
||||||
// This file is part of the GNU ISO C++ Library. This library is free
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -40,7 +40,7 @@
|
|||||||
|
|
||||||
#include <bits/c++config.h>
|
#include <bits/c++config.h>
|
||||||
#include <bits/char_traits.h>
|
#include <bits/char_traits.h>
|
||||||
#include <memory> // For allocator.
|
#include <bits/allocator.h>
|
||||||
|
|
||||||
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
|
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
|
||||||
|
|
||||||
|
@ -43,7 +43,6 @@
|
|||||||
#include <bits/stl_function.h> // For less
|
#include <bits/stl_function.h> // For less
|
||||||
#include <bits/functexcept.h>
|
#include <bits/functexcept.h>
|
||||||
#include <locale>
|
#include <locale>
|
||||||
#include <algorithm> // For std::distance, srd::search.
|
|
||||||
|
|
||||||
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
|
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// Components for manipulating sequences of characters -*- C++ -*-
|
// Components for manipulating sequences of characters -*- C++ -*-
|
||||||
|
|
||||||
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005
|
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
||||||
|
// 2005, 2006, 2007
|
||||||
// Free Software Foundation, Inc.
|
// Free Software Foundation, Inc.
|
||||||
//
|
//
|
||||||
// This file is part of the GNU ISO C++ Library. This library is free
|
// This file is part of the GNU ISO C++ Library. This library is free
|
||||||
@ -43,8 +44,8 @@
|
|||||||
|
|
||||||
#include <bits/c++config.h>
|
#include <bits/c++config.h>
|
||||||
#include <bits/stringfwd.h>
|
#include <bits/stringfwd.h>
|
||||||
#include <bits/char_traits.h>
|
#include <bits/char_traits.h> // NB: In turn includes stl_algobase.h
|
||||||
#include <memory> // For allocator.
|
#include <bits/allocator.h>
|
||||||
#include <bits/cpp_type_traits.h>
|
#include <bits/cpp_type_traits.h>
|
||||||
#include <iosfwd> // For operators >>, <<, and getline decls.
|
#include <iosfwd> // For operators >>, <<, and getline decls.
|
||||||
#include <bits/stl_iterator.h>
|
#include <bits/stl_iterator.h>
|
||||||
@ -52,7 +53,6 @@
|
|||||||
#include <bits/basic_string.h>
|
#include <bits/basic_string.h>
|
||||||
|
|
||||||
#ifndef _GLIBCXX_EXPORT_TEMPLATE
|
#ifndef _GLIBCXX_EXPORT_TEMPLATE
|
||||||
# include <algorithm> // for find_if
|
|
||||||
# include <bits/basic_string.tcc>
|
# include <bits/basic_string.tcc>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
// Internal policy header for TR1 unordered_set and unordered_map -*- C++ -*-
|
// Internal policy header for TR1 unordered_set and unordered_map -*- C++ -*-
|
||||||
|
|
||||||
// Copyright (C) 2005, 2006 Free Software Foundation, Inc.
|
// Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
|
||||||
//
|
//
|
||||||
// This file is part of the GNU ISO C++ Library. This library is free
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -35,6 +35,7 @@
|
|||||||
#define _TR1_HASHTABLE_POLICY_H 1
|
#define _TR1_HASHTABLE_POLICY_H 1
|
||||||
|
|
||||||
#include <functional> // _Identity, _Select1st
|
#include <functional> // _Identity, _Select1st
|
||||||
|
#include <algorithm> // lower_bound
|
||||||
#include <tr1/utility>
|
#include <tr1/utility>
|
||||||
#include <ext/type_traits.h>
|
#include <ext/type_traits.h>
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// 1999-06-10 bkoz
|
// 1999-06-10 bkoz
|
||||||
|
|
||||||
// Copyright (C) 1994, 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
|
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 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
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -21,6 +22,7 @@
|
|||||||
// 21.3.5.6 basic_string::replace
|
// 21.3.5.6 basic_string::replace
|
||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include <algorithm> // for std::find
|
||||||
#include <testsuite_hooks.h>
|
#include <testsuite_hooks.h>
|
||||||
|
|
||||||
bool test01(void)
|
bool test01(void)
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// 1999-06-10 bkoz
|
// 1999-06-10 bkoz
|
||||||
|
|
||||||
// Copyright (C) 1994, 1999, 2001, 2002, 2003 Free Software Foundation, Inc.
|
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 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
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -21,6 +22,7 @@
|
|||||||
// 21.3.5.6 basic_string::replace
|
// 21.3.5.6 basic_string::replace
|
||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include <algorithm> // for std::find
|
||||||
#include <testsuite_hooks.h>
|
#include <testsuite_hooks.h>
|
||||||
|
|
||||||
bool test01(void)
|
bool test01(void)
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
// 1999-06-08 bkoz
|
// 1999-06-08 bkoz
|
||||||
|
|
||||||
// Copyright (C) 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
|
// Copyright (C) 1999, 2000, 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
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -22,6 +23,7 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <bitset>
|
#include <bitset>
|
||||||
|
#include <algorithm> // std::reverse
|
||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
#include <testsuite_hooks.h>
|
#include <testsuite_hooks.h>
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Testing character type and state type with char_traits and codecvt
|
// Testing character type and state type with char_traits and codecvt
|
||||||
// specializations for the C++ library testsuite.
|
// specializations for the C++ library testsuite.
|
||||||
//
|
//
|
||||||
// Copyright (C) 2003, 2005 Free Software Foundation, Inc.
|
// Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
|
||||||
//
|
//
|
||||||
// This file is part of the GNU ISO C++ Library. This library is free
|
// 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
|
// software; you can redistribute it and/or modify it under the
|
||||||
@ -36,6 +36,7 @@
|
|||||||
#include <climits>
|
#include <climits>
|
||||||
#include <string> // for char_traits
|
#include <string> // for char_traits
|
||||||
#include <locale> // for codecvt
|
#include <locale> // for codecvt
|
||||||
|
#include <algorithm> // for transform
|
||||||
#include <ext/pod_char_traits.h>
|
#include <ext/pod_char_traits.h>
|
||||||
|
|
||||||
namespace __gnu_test
|
namespace __gnu_test
|
||||||
|
Loading…
Reference in New Issue
Block a user