diff options
12 files changed, 63 insertions, 44 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 6f17534..e4e6924 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,32 @@ +2007-10-12 Benjamin Kosnik <bkoz@redhat.com> + + * docs/doxygen/user.cfg.in: Scan tr1_impl/hashtable. + * include/tr1_impl/hashtable: Correct comment. + + * include/ext/hash_map: Remove extraneous public markers. + * include/ext/hash_set: Same. + + * testsuite/25_algorithms/headers/parallel_algorithm.cc: Move + inside algorithm directory. + * testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: Same. + * testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: Same. + * testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: Same. + * testsuite/25_algorithms/headers/algorithm/parallel_algorithm.cc: + To this. + * testsuite/25_algorithms/headers/algorithm/ + algorithm_parallel_mode.cc: Same. + * testsuite/25_algorithms/headers/algorithm/ + parallel_algorithm_mixed1.cc: Same. + * testsuite/25_algorithms/headers/algorithm/ + parallel_algorithm_mixed2.cc: Same. + + * testsuite/21_strings/basic_string/requirements/ + explicit_instantiation/debug.cc: Remove exception text. + + * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: + Fix for debug mode testing. + * testsuite/23_containers/vector/bool/capacity/29134.cc: Same. + 2007-10-12 Jesper Nilsson <jesper.nilsson@axis.com> * testsuite/tr1/5_numerical_facilities/special_functions/ diff --git a/libstdc++-v3/docs/doxygen/user.cfg.in b/libstdc++-v3/docs/doxygen/user.cfg.in index ab22db0..6b8cca1 100644 --- a/libstdc++-v3/docs/doxygen/user.cfg.in +++ b/libstdc++-v3/docs/doxygen/user.cfg.in @@ -605,6 +605,7 @@ INPUT = @srcdir@/docs/doxygen/doxygroups.cc \ include/tr1_impl/cwchar \ include/tr1_impl/cwctype \ include/tr1_impl/functional \ + include/tr1_impl/hashtable \ include/tr1_impl/random \ include/tr1_impl/regex \ include/tr1_impl/tuple \ diff --git a/libstdc++-v3/include/ext/hash_map b/libstdc++-v3/include/ext/hash_map index 183bff5..b2d937f 100644 --- a/libstdc++-v3/include/ext/hash_map +++ b/libstdc++-v3/include/ext/hash_map @@ -120,7 +120,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) get_allocator() const { return _M_ht.get_allocator(); } - public: hash_map() : _M_ht(100, hasher(), key_equal(), allocator_type()) {} @@ -158,7 +157,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) : _M_ht(__n, __hf, __eql, __a) { _M_ht.insert_unique(__f, __l); } - public: size_type size() const { return _M_ht.size(); } @@ -196,7 +194,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) end() const { return _M_ht.end(); } - public: pair<iterator, bool> insert(const value_type& __obj) { return _M_ht.insert_unique(__obj); } @@ -342,7 +339,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) get_allocator() const { return _M_ht.get_allocator(); } - public: hash_multimap() : _M_ht(100, hasher(), key_equal(), allocator_type()) {} @@ -380,7 +376,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) : _M_ht(__n, __hf, __eql, __a) { _M_ht.insert_equal(__f, __l); } - public: size_type size() const { return _M_ht.size(); } @@ -418,7 +413,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) end() const { return _M_ht.end(); } - public: iterator insert(const value_type& __obj) { return _M_ht.insert_equal(__obj); } @@ -468,7 +462,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) clear() { _M_ht.clear(); } - public: void resize(size_type __hint) { _M_ht.resize(__hint); } diff --git a/libstdc++-v3/include/ext/hash_set b/libstdc++-v3/include/ext/hash_set index b796bab..79d605f 100644 --- a/libstdc++-v3/include/ext/hash_set +++ b/libstdc++-v3/include/ext/hash_set @@ -122,7 +122,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) get_allocator() const { return _M_ht.get_allocator(); } - public: hash_set() : _M_ht(100, hasher(), key_equal(), allocator_type()) {} @@ -160,7 +159,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) : _M_ht(__n, __hf, __eql, __a) { _M_ht.insert_unique(__f, __l); } - public: size_type size() const { return _M_ht.size(); } @@ -190,7 +188,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) end() const { return _M_ht.end(); } - public: pair<iterator, bool> insert(const value_type& __obj) { @@ -239,7 +236,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) clear() { _M_ht.clear(); } - public: void resize(size_type __hint) { _M_ht.resize(__hint); } @@ -327,7 +323,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) get_allocator() const { return _M_ht.get_allocator(); } - public: hash_multiset() : _M_ht(100, hasher(), key_equal(), allocator_type()) {} @@ -365,7 +360,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) : _M_ht(__n, __hf, __eql, __a) { _M_ht.insert_equal(__f, __l); } - public: size_type size() const { return _M_ht.size(); } @@ -395,7 +389,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) end() const { return _M_ht.end(); } - public: iterator insert(const value_type& __obj) { return _M_ht.insert_equal(__obj); } @@ -437,7 +430,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT_D) clear() { _M_ht.clear(); } - public: void resize(size_type __hint) { _M_ht.resize(__hint); } diff --git a/libstdc++-v3/include/tr1_impl/hashtable b/libstdc++-v3/include/tr1_impl/hashtable index acdeb66..0255e1a 100644 --- a/libstdc++-v3/include/tr1_impl/hashtable +++ b/libstdc++-v3/include/tr1_impl/hashtable @@ -37,7 +37,7 @@ // std::tr1::unordered_multiset, and std::tr1::unordered_multimap. // hashtable has many template parameters, partly to accommodate // the differences between those four classes and partly to -// accommodate policy choices that go beyond what TR1 calls for. +// accommodate policy choices that go beyond TR1 specifications. // Class template hashtable attempts to encapsulate all reasonable // variation among hash tables that use chaining. It does not handle diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/requirements/explicit_instantiation/debug.cc b/libstdc++-v3/testsuite/21_strings/basic_string/requirements/explicit_instantiation/debug.cc index 8b02175..8a8951f 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/requirements/explicit_instantiation/debug.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/requirements/explicit_instantiation/debug.cc @@ -16,15 +16,6 @@ // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, // USA. -// As a special exception, you may use this file as part of a free software -// library without restriction. Specifically, if other files instantiate -// templates or use macros or inline functions from this file, or you compile -// this file and link it with other files to produce an executable, this -// file does not by itself cause the resulting executable to be covered by -// the GNU General Public License. This exception does not however -// invalidate any other reasons why the executable file might be covered by -// the GNU General Public License. - // This file tests explicit instantiation of basic_string #include <debug/string> diff --git a/libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc b/libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc index 7ebec61..3724768 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/bool/capacity/29134.cc @@ -27,13 +27,20 @@ void test01() { bool test __attribute__((unused)) = true; - std::vector<bool> vb; + using std::vector; + using std::numeric_limits; + +#ifndef _GLIBCXX_DEBUG + using std::_S_word_bit; +#else + using std::_GLIBCXX_STD_D::_S_word_bit; +#endif // Actually, vector<bool> is special, see libstdc++/31370. - typedef std::vector<bool>::difference_type difference_type; + vector<bool> vb; + typedef vector<bool>::difference_type difference_type; VERIFY( vb.max_size() - == (std::numeric_limits<difference_type>::max() - - int(std::_S_word_bit) + 1) ); + == (numeric_limits<difference_type>::max() - int(_S_word_bit) + 1) ); } int main() diff --git a/libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc b/libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc index 0c4d0a8..fbbe7b4 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/31370.cc @@ -24,6 +24,12 @@ #include <stdexcept> #include <testsuite_hooks.h> +#ifndef _GLIBCXX_DEBUG + using std::_S_word_bit; +#else + using std::_GLIBCXX_STD_D::_S_word_bit; +#endif + inline void check_cap_ge_size(const std::vector<bool>& x) { @@ -62,7 +68,7 @@ void test01() { std::vector<bool> x; x.resize(x.max_size() / 2 + 1, false); - for(int i = 0; i < std::_S_word_bit; ++i) + for(int i = 0; i < _S_word_bit; ++i) x.push_back(false); check_cap_ge_size(x); } @@ -75,7 +81,7 @@ void test01() { std::vector<bool> x; x.resize(x.max_size() / 2 + 1, false); - x.insert(x.end(), std::_S_word_bit, false); + x.insert(x.end(), _S_word_bit, false); check_cap_ge_size(x); } catch(std::bad_alloc&) @@ -87,7 +93,7 @@ void test01() { std::vector<bool> x; x.resize(x.max_size() / 2 + 1, false); - std::vector<bool> y(std::_S_word_bit, false); + std::vector<bool> y(_S_word_bit, false); x.insert(x.end(), y.begin(), y.end()); check_cap_ge_size(x); } @@ -101,8 +107,8 @@ void test01() try { std::vector<bool> x; - x.resize(x.max_size() - std::_S_word_bit, false); - for(int i = 0; i < std::_S_word_bit; ++i) + x.resize(x.max_size() - _S_word_bit, false); + for(int i = 0; i < _S_word_bit; ++i) x.push_back(false); check_cap_ge_size(x); } @@ -114,8 +120,8 @@ void test01() try { std::vector<bool> x; - x.resize(x.max_size() - std::_S_word_bit, false); - x.insert(x.end(), std::_S_word_bit, false); + x.resize(x.max_size() - _S_word_bit, false); + x.insert(x.end(), _S_word_bit, false); check_cap_ge_size(x); } catch(std::bad_alloc&) @@ -126,8 +132,8 @@ void test01() try { std::vector<bool> x; - x.resize(x.max_size() - std::_S_word_bit, false); - std::vector<bool> y(std::_S_word_bit, false); + x.resize(x.max_size() - _S_word_bit, false); + std::vector<bool> y(_S_word_bit, false); x.insert(x.end(), y.begin(), y.end()); check_cap_ge_size(x); } @@ -141,8 +147,8 @@ void test01() try { std::vector<bool> x; - x.resize(x.max_size() - std::_S_word_bit, false); - for(int i = 0; i < std::_S_word_bit + 1; ++i) + x.resize(x.max_size() - _S_word_bit, false); + for(int i = 0; i < _S_word_bit + 1; ++i) x.push_back(false); ++myexit; } @@ -156,8 +162,8 @@ void test01() try { std::vector<bool> x; - x.resize(x.max_size() - std::_S_word_bit, false); - x.insert(x.end(), std::_S_word_bit + 1, false); + x.resize(x.max_size() - _S_word_bit, false); + x.insert(x.end(), _S_word_bit + 1, false); ++myexit; } catch(std::bad_alloc) @@ -170,8 +176,8 @@ void test01() try { std::vector<bool> x; - x.resize(x.max_size() - std::_S_word_bit, false); - std::vector<bool> y(std::_S_word_bit + 1, false); + x.resize(x.max_size() - _S_word_bit, false); + std::vector<bool> y(_S_word_bit + 1, false); x.insert(x.end(), y.begin(), y.end()); ++myexit; } diff --git a/libstdc++-v3/testsuite/25_algorithms/headers/algorithm_parallel_mode.cc b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/algorithm_parallel_mode.cc index c2e56c2..c2e56c2 100644 --- a/libstdc++-v3/testsuite/25_algorithms/headers/algorithm_parallel_mode.cc +++ b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/algorithm_parallel_mode.cc diff --git a/libstdc++-v3/testsuite/25_algorithms/headers/parallel_algorithm.cc b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/parallel_algorithm.cc index 90e0279..90e0279 100644 --- a/libstdc++-v3/testsuite/25_algorithms/headers/parallel_algorithm.cc +++ b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/parallel_algorithm.cc diff --git a/libstdc++-v3/testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/parallel_algorithm_mixed1.cc index c6c4ce2..c6c4ce2 100644 --- a/libstdc++-v3/testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc +++ b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/parallel_algorithm_mixed1.cc diff --git a/libstdc++-v3/testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/parallel_algorithm_mixed2.cc index 94794d4..94794d4 100644 --- a/libstdc++-v3/testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc +++ b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/parallel_algorithm_mixed2.cc |