summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include/ext
Commit message (Collapse)AuthorAgeFilesLines
...
* * configure.ac: Substitute CPU_OPT_EXT_RANDOM.drepper2012-09-172-84/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.host: Define cpu_opt_ext_random to location of the optimized version of <ext/random>. * include/Makefile.am (ext_headers): Add ${ext_host_headers}. (ext_host_headers): Define. * include/ext/random (simd_fast_mersenne_twister_engine<> ::operator==): Don't define function here. * include/ext/random.tcc (simd_fast_mersenne_twister_engine): Don't define code using SSE2 here. Define generic code only if _GLIBCXX_OPT_HAVE_RANDOM_SFMT_GEN_READ is not defined. (simd_fast_mersenne_twister_engine<> ::operator==): Define here if _GLIBCXX_OPT_HAVE_RANDOM_SFMT_OPERATOREQUAL is not defined. * config/cpu/generic/opt/ext/opt_random.h: New file. * config/cpu/i486/opt/ext/opt_random.h: New file. * libsupc++/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. * po/Makefile.in: Regenerated. * configure: Regenerated. * Makefile.in: Regenerated. * doc/Makefile.in: Regenerated. * aclocal.m4: Regenerated. * python/Makefile.in: Regenerated. * include/Makefile.in: Regenerated. * src/c++98/Makefile.in: Regenerated. * src/c++11/Makefile.in: Regenerated. * src/Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191384 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix a paste-o in ext/random.tcc - declared an Adapted urng that was not used ↵emsr2012-09-171-3/+0
| | | | | | ot needed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191371 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-09-16 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-09-161-9/+10
| | | | | | | | | | | | | | | | | | | | * include/ext/random (rice_distribution<>::operator==): Change inline friend definition to non-template. * testsuite/ext/random/rice_distribution/requirements/ explicit_instantiation/1.cc: New. * testsuite/26_numerics/random/normal_mv_distribution: Move... * testsuite/ext/random/normal_mv_distribution: ... here. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine: Move... * testsuite/ext/random/simd_fast_mersenne_twister_engine: ... here. * testsuite/26_numerics/random/beta_distribution: Move... * testsuite/ext/random/beta_distribution: ... here. * testsuite/26_numerics/random/rice_distribution: Move... * testsuite/ext/random/rice_distribution: ... here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191367 138bc75d-0d04-0410-961f-82ee72b054a4
* Add the rice distribution as an extension.emsr2012-09-162-15/+331
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191362 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>)drepper2012-09-051-2/+1
| | | | | | | | (operator()): Use __generate() function of _M_nd. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190975 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class.drepper2012-09-052-0/+519
| | | | | | | | | | | | | | | | | | | | | | | * include/ext/random.tccAdd out-of-line functions for __gnu_cxx::normal_mv_distribution<>. * testsuite/26_numerics/random/normal_mv_distribution/ operators/equal.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ operators/serialize.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ operators/inequal.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ cons/default.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ cons/parms.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ requirements/explicit_instantiation/1.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ requirements/typedefs.cc: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190960 138bc75d-0d04-0410-961f-82ee72b054a4
* * libstdc++-v3/include/ext/random: Add __gnu_cxx::beta_distribution<>drepper2012-09-042-0/+317
| | | | | | | | | | | | | | | | | | | | | | | | class. * libstdc++-v3/include/ext/random.tcc: Add out-of-line functions for __gnu_cxx::beta_distribution<>. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ operators/equal.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ operators/serialize.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ operators/inequal.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ cons/parms.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ cons/default.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ requirements/typedefs.cc: New file. * libstdc++-v3/testsuite/26_numerics/random/beta_distribution/ requirements/explicit_instantiation/1.cc: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190954 138bc75d-0d04-0410-961f-82ee72b054a4
* Add simd_fast_mersenne_twister_engine class.drepper2012-08-292-0/+827
| | | | | | | | | | | | | | | | | | | | | | | | | | * include/ext/random: New file. * include/ext/random.tcc: New file. * include/Makefile.am (ext_headers): Add random and random.tcc. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ operators/inequal.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ operators/equal.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ operators/serialize.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/seed2.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/default.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/seed_seq.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/copy.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/seed1.cc: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190783 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/53270redi2012-07-162-57/+26
| | | | | | | | | | * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use NSDMI in C++98 mode too. * include/ext/rope: Add system_header pragma. (_Refcount_Base, _Rope_RopeRep): Use NSDMI. (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189553 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/53978redi2012-07-161-4/+23
| | | | | | | | | | * include/bits/alloc_traits.h (allocator_traits): Define static constants. * include/bits/ptr_traits.h (pointer_traits): Likewise. * include/ext/alloc_traits.h (__allocator_always_compares_equal): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189547 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/53578redi2012-06-151-2/+2
| | | | | | | | * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix narrowing conversion. * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188646 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/53270redi2012-06-142-0/+32
| | | | | | | | | * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use NSDMI in C++11 mode. * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in destructor when initialized by function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188637 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-05-151-15/+1
| | | | | | | | | | | | | | | | | | | | | | PR libstdc++/53339 * include/bits/hashtable_policy.h (__detail::_Identity, __detail::_Select1st): Add. (_Map_base, _Hashtable_base): Use the latter, adjust parameters. * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust. * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable): Likewise. * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable): Likewise. * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd) Unconditionally derive from unary_function. * include/ext/functional (identity, select1st, select2nd): Remove #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits. * testsuite/23_containers/unordered_map/requirements/53339.cc: New. * testsuite/23_containers/unordered_multimap/requirements/ 53339.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187515 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/ext/alloc_traits.h (__alloc_traits::difference_type):redi2012-04-221-0/+2
| | | | | | Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186673 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-04-121-4/+22
| | | | | | | | | | | | PR libstdc++/52942 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd): In C++11 mode do not derive from std::unary_function. * include/ext/functional (identity, select1st, select2nd): Adjust. * testsuite/23_containers/unordered_map/requirements/52942.cc: New. * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186375 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>bkoz2012-03-191-0/+2
| | | | | | | | | | | | | | | | * include/bits/allocator.h (std::allocator): Base class is __allocator_base. (uses_allocator): Add to sub-grouping. * include/ext/new_allocator.h: Doxygen markup for tparm. * config/allocator/bitmap_allocator_base.h: Use __allocator_base template alias in C++11. * config/allocator/malloc_allocator_base.h: Same. * config/allocator/mt_allocator_base.h: Same. * config/allocator/new_allocator_base.h: Same. * config/allocator/pool_allocator_base.h: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185544 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>bkoz2012-03-192-4/+12
| | | | | | | | | * include/ext/pb_ds/detail/pat_trie_/ constructors_destructor_fn_imps.hpp: Increment after recursion. * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert node_type markup from brief. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185542 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-03-08 Benjamin Kosnik <bkoz@redhat.com>bkoz2012-03-082-6/+6
| | | | | | | | | | | | | | * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0. * include/bits/locale_facets.h: Adjust markup to avoid warnings. * include/ext/pb_ds/assoc_container.hpp: Same. * include/ext/pb_ds/priority_queue.hpp: Same. * include/std/fstream: Same. * include/std/ratio: Same. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line numbers. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185094 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-03-04 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-03-051-1/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Jonathan Wakely <jwakely.gcc@gmail.com> PR libstdc++/43813 * include/bits/stl_iterator_base_types.h (_RequireInputIter): New. * include/ext/vstring.h (__versa_string<>::__versa_string (_InputIterator, _InputIterator, const _Alloc&), __versa_string<>::append(_InputIterator, _InputIterator), __versa_string<>::assign(_InputIterator, _InputIterator), __versa_string<>::insert(iterator, _InputIterator, _InputIterator), __versa_string<>::replace(iterator, iterator, _InputIterator, _InputIterator)): Use it. * include/bits/stl_list.h (list<>::list(_InputIterator, _InputIterator, const allocator_type&), list<>::assign(_InputIterator, _InputIterator), list<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/stl_vector.h (vector<>::vector(_InputIterator, _InputIterator, const allocator_type&), vector<>::assign(_InputIterator, _InputIterator), vectort<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/stl_deque.h (deque<>::deque(_InputIterator, _InputIterator, const allocator_type&), deque<>::deque(_InputIterator, _InputIterator), deque<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/stl_bvector.h (vector<>::vector(_InputIterator, _InputIterator, const allocator_type&), vector<>::deque(_InputIterator, _InputIterator), vector<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/forward_list.h (forward_list<>::forward_list (_InputIterator, _InputIterator, const allocator_type&), forward_list<>::assign(_InputIterator, _InputIterator), forward_list<>::insert_after(const_iterator, _InputIterator, _InputIterator)): Likewise. (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove. (forward_list<>::_M_range_initialize): Add, adjust everywhere. * include/bits/forward_list.tcc: Adjust. * include/debug/forward_list: Adjust. * include/debug/vector: Likewise. * include/debug/deque: Likewise. * include/debug/list: Likewise. * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New. * testsuite/23_containers/forward_list/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/vector/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/deque/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/list/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/forward_list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184911 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/51798jakub2012-01-271-3/+3
| | | | | | | | | | | * config/cpu/generic/atomicity_builtins/atomicity.h (__exchange_and_add, __atomic_add): Use __atomic_fetch_add with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add. * include/ext/atomicity.h (__exchange_and_add, __atomic_add): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183644 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-11-30 Benjamin Kosnik <bkoz@redhat.com>bkoz2011-12-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove size-specific macros. _GLIBCXX_ATOMIC_BUILTINS_1, _GLIBCXX_ATOMIC_BUILTINS_2, _GLIBCXX_ATOMIC_BUILTINS_4, _GLIBCXX_ATOMIC_BUILTINS_8. Use _GLIBCXX_ATOMIC_BUILTINS to indicate use of C++11 atomic builtins. * config.h.in: Regenerate. * configure: Regenerate. * include/Makefile.am (bits_sup_headers): Add atomic_lockfree_defines.h. * include/Makefile.in: Regenerate. * libsupc++/Makefile.am: Compile C++11 support with -std=gnu++0x. * libsupc++/Makefile.in: Regenerate. * include/bits/atomic_base.h: Move lock-free property macros... * libsupc++/atomic_lockfree_defines.h: ...here. * include/std/future: Use C++11 macros. * libsupc++/eh_ptr.cc: Same. * libsupc++/eh_throw.cc: Same. * libsupc++/exception: Same. * libsupc++/exception_ptr.h: Same. * libsupc++/guard.cc: Same. * libsupc++/nested_exception.cc: Same. * libsupc++/nested_exception.h: Same. * src/future.cc: Same. * include/ext/atomicity.h: Use _GLIBCXX_ATOMIC_BUILTINS. * doc/doxygen/user.cfg.in * doc/xml/manual/concurrency_extensions.xml * testsuite/18_support/exception_ptr/lifespan.cc * testsuite/lib/libstdc++.exp git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181869 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-11-18 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-11-181-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/hash-long-double-aux.cc: Rename to... * src/hash-long-double-tr1-aux.cc: ... this. * src/compatibility-ldbl.cc: Adjust. * src/hash_tr1.cc: Likewise. * src/hash_c++0x.cc: Don't use src/hash-long-double-aux.cc. * include/bits/functional_hash.h (hash<_Tp*>::operator(), specs for integer types, hash<float>::operator(), hash<double>::operator(), hash<long double>::operator()): Declare noexcept. * include/debug/bitset (hash<__debug::bitset>::operator()): Likewise. * include/debug/vector (hash<__debug::vector>::operator()): Likewise. * include/std/system_error (hash<error_code>::operator()): Likewise. * include/std/thread (hash<thread::id>::operator()): Likewise. * include/std/bitset (hash<bitset>::operator()): Likewise. * include/std/typeindex (hash<type_index>::operator()): Likewise. * include/profile/bitset (hash<__profile::vector>::operator()): Likewise. * include/profile/vector (hash<__profile::vector>::operator()): Likewise. * include/ext/vstring.h (hash<__vstring>::operator(), hash<__wvstring>::operator(), hash<__u16vstring>::operator(), hash<__u32vstring>::operator()): Likewise. * include/bits/shared_ptr.h (hash<shared_ptr>::operator()): Likewise. * include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()): Likewise. * include/bits/unique_ptr.h (hash<unique_ptr>::operator()): Likewise. * include/bits/basic_string.h (hash<string>::operator(), hash<wstring>::operator(), hash<u16string>::operator(), hash<u32string>::operator()): Likewise. * include/bits/vector.tcc (hash<vector>::operator()): Likewise. * include/bits/stl_bvector.h (hash<vector>::operator()): Likewise. * libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of throw(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181473 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/51083redi2011-11-121-25/+31
| | | | | | | | | | | | | | | | * include/ext/type_traits.h (__promote): Only define __type member for integral and floating point types, to prevent math functions participating in overload resolution for other types. (__promote_2, __promote_3, __promote_4): Use __promote in default template argument values, so deduction only succeeds for integral and floating point types. * testsuite/26_numerics/cmath/51083.cc: New. * testsuite/26_numerics/complex/51083.cc: New. * testsuite/tr1/8_c_compatibility/cmath/51083.cc: New. * testsuite/tr1/8_c_compatibility/complex/51083.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181321 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/51027 - accepts alias-declaration without ';'dodji2011-11-091-1/+1
| | | | | | | | | | | | | | | | | | gcc/cp/ * parser.c (cp_parser_alias_declaration): Require ';' at the end of the declaration. libstdc++-v3/ * include/ext/pointer.h (rebind): Append missing ';'. gcc/testsuite * g++.dg/cpp0x/alias-decl-12.C: New test. * g++.dg/ext/alias-decl-attr4.C: Append missing ';'. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181195 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/ptr_traits.h (__rebind): Replace with...redi2011-11-082-14/+2
| | | | | | | | | | | | | | | (rebind): Implement using alias-declaration. * include/ext/pointer.h (__rebind): Replace with... (rebind): Implement using alias-declaration. * include/bits/alloc_traits.h (__rebind_alloc, __rebind_traits): Replace with... (rebind_alloc, rebind_traits): Implement using alias-declaration. * include/ext/alloc_traits.h (rebind): Use rebind_alloc instead of __rebind_alloc. * include/std/scoped_allocator (rebind): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181139 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/basic_string.h (basic_string::at): Move adjacent to otherredi2011-11-071-0/+11
| | | | | | | | | | | | | | | | | | overload. (basic_string::pop_back): Define. * include/debug/string (__gnu_debug::basic_string::pop_back): Likewise. * include/ext/vstring.h (__versa_string::pop_back): Likewise. * config/abi/pre/gnu.ver: Add new symbols. * testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New. * testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New. * testsuite/21_strings/basic_string/range_access.cc: Split to ... * testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ... * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here. * testsuite/ext/vstring/modifiers/char/pop_back.cc: New. * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181049 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/Makefile.am (install-freestanding-headers): Installjason2011-11-011-0/+3
| | | | | | | c++0x_warning.h. * libsupc++/initializer_list: Include it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180727 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-05 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-10-061-1/+4
| | | | | | | | * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode when int_type is unsigned. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179587 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-04 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-10-041-0/+13
| | | | | | | | | | | | | | | | | | | * include/ext/alloc_traits.h (__alloc_traits::max_size): Define. (__alloc_traits::rebind): Define. * include/bits/stl_vector.h: Use them. * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define. * testsuite/23_containers/vector/allocator/minimal.cc: New. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line numbers. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179523 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-19 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-191-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/40856 * include/std/limits (numeric_limits<__int128_t>, numeric_limits<__uint128_t>): Add. * src/limits.cc:Define. * config/abi/pre/gnu.ver: Export. * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add. * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add (limits_tl): Use it. * testsuite/18_support/numeric_limits/requirements/ constexpr_functions.cc: Likewise. * testsuite/18_support/numeric_limits/40856.cc: New. * testsuite/18_support/numeric_limits/dr559.cc: Extend. * testsuite/18_support/numeric_limits/lowest.cc: Likewise. * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise. * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error line numbers. * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178969 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/33255 - Support -Wunused-local-typedefs warningdodji2011-09-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/ * c-decl.c (lookup_name): Use the new maybe_record_typedef_use. (pushdecl): Use the new record_locally_defined_typedef. (store_parm_decls): Allocate cfun->language. (finish_function): Use the new maybe_warn_unused_local_typedefs, and free cfun->language. (c_push_function_context): Allocate cfun->language here only if needed. (c_pop_function_context): Likewise, mark cfun->language for collection only when it should be done. * c-common.c (handle_used_attribute): Don't ignore TYPE_DECL nodes. * c-typeck.c (c_expr_sizeof_type, c_cast_expr): Use the new maybe_record_local_typedef_use. gcc/c-family * c-common.h (struct c_language_function::local_typedefs): New field. (record_locally_defined_typedef, maybe_record_typedef_use) (maybe_warn_unused_local_typedefs): Declare new functions. * c-common.c (record_locally_defined_typedef) (maybe_record_typedef_use) (maybe_warn_unused_local_typedefs): Define new functions. * c.opt: Declare new -Wunused-local-typedefs flag. gcc/cp * name-lookup.c (pushdecl_maybe_friend_1): Use the new record_locally_defined_typedef. * decl.c (finish_function): Use the new maybe_warn_unused_local_typedefs. (grokfield): Use the new record_locally_defined_typedef. * parser.c (lookup_name): Use the new maybe_record_typedef_use. gcc/doc/ * invoke.texi: Update documentation for -Wunused-local-typedefs. gcc/testsuite/ * g++.dg/warn/Wunused-local-typedefs.C: New test file. * c-c++-common/Wunused-local-typedefs.c: Likewise. libstdc++-v3/ * include/ext/bitmap_allocator.h (__detail::__mini_vector::__lower_bound): Remove unused typedef. * src/istream.cc (std::operator>>(basic_istream<char>& __in, basic_string<char>& __str)): Likewise. (std::getline): Likewise. * src/valarray.cc (__valarray_product): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178692 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-08-06 Benjamin Kosnik <bkoz@redhat.com>bkoz2011-08-077-38/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO. 2011-08-06 Benjamin Kosnik <bkoz@redhat.com> * doc/doxygen/user.cfg.in: Add scoped_allocator. * include/debug/safe_sequence.h: Fix doxygen markup. * include/debug/safe_unordered_base.h: Same. * include/debug/safe_local_iterator.tcc: Same. * include/debug/safe_unordered_container.h: Same. * include/std/valarray: Same. * include/std/iomanip: Same. * include/std/streambuf: Same. * include/std/bitset: Same. * include/std/fstream: Same. * include/std/functional: Same. * include/std/istream: Same. * include/std/ostream: Same. * include/std/scoped_allocator: Same. * include/std/sstream: Same. * include/parallel/multiway_merge.h: Same. * include/parallel/base.h: Same. * include/parallel/for_each_selectors.h: Same. * include/parallel/multiway_mergesort.h: Same. * include/parallel/search.h: Same. * include/parallel/partial_sum.h: Same. * include/parallel/queue.h: Same. * include/parallel/sort.h: Same. * include/parallel/random_number.h: Same. * include/ext/vstring.h: Same. * include/ext/algorithm: Same. * include/ext/pb_ds/assoc_container.h: Same. * include/ext/bitmap_allocator.h: Same. * include/ext/stdio_filebuf.h: Same. * include/ext/memory: Same. * include/ext/functional: Same. * include/bits/basic_ios.h: Same. * include/bits/stl_list.h: Same. * include/bits/stl_map.h: Same. * include/bits/stl_algobase.h: Same. * include/bits/stl_queue.h: Same. * include/bits/gslice.h: Same. * include/bits/locale_classes.h: Same. * include/bits/stl_set.h: Same. * include/bits/locale_facets.h: Same. * include/bits/stl_stack.h: Same. * include/bits/stl_heap.h: Same. * include/bits/forward_list.h: Same. * include/bits/stream_iterator.h: Same. * include/bits/basic_string.h: Same. * include/bits/stl_multimap.h: Same. * include/bits/stl_pair.h: Same. * include/bits/ios_base.h: Same. * include/bits/stl_numeric.h: Same. * include/bits/stl_vector.h: Same. * include/bits/stl_deque.h: Same. * include/bits/codecvt.h: Same. * include/bits/stl_multiset.h: Same. * include/bits/stl_uninitialized.h: Same. * include/bits/ptr_traits.h: Same. * include/bits/slice_array.h: Same. * include/bits/stl_iterator_base_funcs.h: Same. * include/bits/stl_algo.h: Same. * include/bits/stl_iterator.h: Same. * include/bits/stl_tempbuf.h: Same. * include/bits/regex.h: Same. * include/bits/range_access.h: Same. * include/bits/random.h: Same. * include/bits/alloc_traits.h: Same. * include/bits/regex_error.h: Same. * include/bits/locale_facets_nonio.h: Same. * include/bits/stl_relops.h: Same. * include/backward/auto_ptr.h: Same. * libsupc++/initializer_list: Same. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust line numbers. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177542 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-07-091-4/+79
| | | | | | | | | | | | | * include/ext/alloc_traits.h (__allocator_always_compares_equal): New trait, provide partial specializations for known allocators. (__alloc_traits::construct, __alloc_traits::destroy): Overload for non-standard pointer types. (__alloc_traits::_S_always_equal): New trait for use with noexcept. (__alloc_traits::_S_nothrow_move): Likewise. (__alloc_traits::_S_nothrow_swap): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176077 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-07-092-14/+9
| | | | | | | | | | * include/ext/cast.h: Fix typo in include guard. * include/ext/pointer.h (_Unqualified_type): Remove redundant partial specializations for volatile types. Fix typos in comments. (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176075 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-22 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-06-221-1/+1
| | | | | | | | * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall warning. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175321 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-22 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-06-221-0/+121
| | | | | | | | | | | | | | | | * include/Makefile.am: Add alloc_traits.h headers. * include/Makefile.in: Regenerate. * include/std/memory: Include uses_allocator.h explicitly. * include/bits/allocator.h (allocator_traits): Move to ... * include/bits/alloc_traits.h: New header. * include/ext/alloc_traits.h (__alloc_traits): Extension to provide a common allocator interface for C++98 and C++0x. * include/bits/stl_construct.h: Use __alloc_traits. * include/bits/stl_uninitialized.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175305 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-12 François Dumont <francois.cppdevs@free.fr>paolo2011-06-121-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> * include/bits/allocator.h (__shrink_to_fit): Rename to __shrink_to_fit_aux, fix. * include/bits/stl_vector.h (_M_shrink_to_fit): Declare. (shrink_to_fit): Use the latter. * include/debug/vector (shrink_to_fit): Likewise. * include/bits/vector.tcc (_M_shrink_to_fit): Define. * include/bits/stl_deque.h (_M_shrink_to_fit): Declare. (shrink_to_fit): Use the latter. * include/debug/deque (shrink_to_fit): Likewise. * include/bits/deque.tcc (_M_shrink_to_fit): Define. * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add. * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare. (shrink_to_fit): Use the latter. (reserve): Use _M_reallocate, move inline. (_Bvector_base<>::_S_nword): Add, use it throughout. * include/debug/string (shrink_to_fit): Redo. * include/ext/vstring.h (shrink_to_fit): Optimize. * include/bits/basic_string.h (shrink_to_fit): Likewise. * testsuite/21_strings/debug/shrink_to_fit.cc: New. * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise. * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: Likewise. * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc: Likewise. * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174967 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-06-111-0/+9
| | | | | | | | | | | * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x mode by overloading to take allocator's pointer type. * testsuite/23_containers/vector/ext_pointer/types/2.cc: New. * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/ 2.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174958 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-10 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-06-108-65/+84
| | | | | | | | | | | | | | | | * include/ext/throw_allocator.h: Use noexcept. * include/ext/pool_allocator.h: Likewise. * include/ext/bitmap_allocator.h: Likewise. * include/ext/new_allocator.h: Likewise. * include/ext/malloc_allocator.h: Likewise. * include/ext/array_allocator.h: Likewise. * include/ext/mt_allocator.h: Likewise. * include/ext/extptr_allocator.h: Likewise. * testsuite/util/testsuite_allocator.h: Likewise; do not include <cassert> directly, include <testsuite_hooks.h> instead. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174918 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-10 Benjamin Kosnik <bkoz@redhat.com>bkoz2011-06-1065-1378/+1288
| | | | | | | | | | | * include/ext/pb_ds/*: Doxygen markup redo. * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp. * include/Makefile.in: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174917 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-08 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-06-081-3/+4
| | | | | | | | | | | * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h> instead of <limits>. * include/bits/allocator.h: Likewise. * include/std/chrono (duration_values<>::min): Call lowest, not min. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174805 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-05 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-06-051-0/+39
| | | | | | | | | * include/bits/ptr_traits.h (pointer_traits): Fix typos. * include/ext/pointer.h (pointer_traits): Add partial specialization for _Pointer_adapter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174661 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-01 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-06-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Use std::move on the allocator, use noexcept. (_Hashtable<>::~_Hashtable): Use noexcept. * include/bits/stl_list.h: Likewise. * include/bits/forward_list.h: Likewise. * include/bits/stl_vector.h: Likewise. * include/bits/stl_bvector.h: Likewise. * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept. * include/bits/stl_set.h: Likewise. * include/bits/stl_multimap.h: Likewise. * include/bits/stl_multiset.h: Likewise. * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use std::move on the allocator. (_Rb_tree<>::~_Rb_tree): Use noexcept. * include/bits/stl_deque.h: Likewise. * include/bits/basic_string.h (basic_string<>::~basic_string): Use noexcept. * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise. * include/debug/set.h: Adjust. * include/debug/unordered_map: Likewise. * include/debug/multiset.h: Likewise. * include/debug/forward_list: Likewise. * include/debug/vector: Likewise. * include/debug/unordered_set: Likewise. * include/debug/deque: Likewise. * include/debug/map.h: Likewise. * include/debug/string: Likewise. * include/debug/list: Likewise. * include/debug/multimap.h: Likewise. * include/profile/set.h: Likewise. * include/profile/unordered_map: Likewise. * include/profile/multiset.h: Likewise. * include/profile/forward_list: Likewise. * include/profile/unordered_set: Likewise. * include/profile/vector: Likewise. * include/profile/deque: Likewise. * include/profile/map.h: Likewise. * include/profile/list: Likewise. * include/profile/multimap.h: Likewise. * testsuite/21_strings/basic_string/cons/wchar_t/ noexcept_move_construct.cc: New. * testsuite/21_strings/basic_string/cons/char/ noexcept_move_construct.cc: Likewise. * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_map/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/multimap/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/set/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_multimap/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/forward_list/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_set/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/vector/bool/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/vector/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/multiset/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/list/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_multiset/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/map/cons/noexcept_move_construct.cc * testsuite/23_containers/forward_list/requirements/dr438/ assign_neg.cc: Adjust dg-error line numbers. * testsuite/23_containers/forward_list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Likewise. * include/bits/move.h (swap): Use __and_ in the noexcept. * include/bits/algorithmfwd.h: Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174525 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-31 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-05-312-33/+40
| | | | | | | | | | | | | | * include/bits/basic_string.h: Use noexcept per the FDIS (minus compare(const string&), which uses char_traits::compare, which isn't noexcept; also no noexcept in the move assignment operator and move assign, see c++std-lib-30855). * include/bits/basic_string.tcc: Likewise. * include/ext/vstring.h: Likewise. * include/ext/vstring.tcc: Likewise. * include/debug/string: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174479 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-05-288-56/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/Makefile.am: Add new ptr_traits.h header. * include/Makefile.in: Regenerate. * include/bits/ptr_traits.h (pointer_traits): New. * include/bits/allocator.h (allocator_traits): Add. * include/ext/array_allocator.h (construct, destroy): Update C++0x versions. * include/ext/bitmap_allocator.h (construct, destroy): Likewise. * include/ext/extptr_allocator.h (construct, destroy): Likewise. * include/ext/malloc_allocator.h (construct, destroy): Likewise. * include/ext/mt_allocator.h (construct, destroy): Likewise. * include/ext/new_allocator.h (construct, destroy): Likewise. * include/ext/pool_allocator.h (construct, destroy): Likewise. * include/ext/throw_allocator.h (construct, destroy): Likewise. * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New. * testsuite/20_util/allocator_traits/requirements/ explicit_instantiation.cc: New. * testsuite/20_util/allocator_traits/members/max_size.cc: New. * testsuite/20_util/allocator_traits/members/select.cc: New. * testsuite/20_util/allocator_traits/members/construct.cc: New. * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New. * testsuite/20_util/allocator_traits/members/destroy.cc: New. * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New. * testsuite/20_util/pointer_traits/requirements/ explicit_instantiation.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174380 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-27 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-05-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/49187 * include/parallel/losertree.h: Add missing using declarations of _Base::_M_comp. * include/parallel/algobase.h: Include <parallel/algorithmfwd.h>. * include/parallel/multiway_merge.h: Include <parallel/ multiseq_selection.h>, forward declare __merge_advance. * include/parallel/multiseq_selection.h: Don't include <parallel/ sort.h> here. * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix qualification of upper_bound. * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Use dg-require-debug-mode. * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Likewise. * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: Likewise. * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Likewise. * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Likewise. * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc: Likewise. * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc: Likewise. * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Likewise. * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Likewise. * include/parallel/algo.h: Minor uglification fixes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174342 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-23 Benjamin Kosnik <bkoz@redhat.com>bkoz2011-05-24251-9413/+6677
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/37144 PR libstdc++/28457 Interface changes for ext/pb_ds. PB_DS_BASE_C_DEC to unique PB_DS_*_BASE macros. * include/ext/pb_ds/assoc_container.hpp (container_base): Remove. (basic_hash_table, basic_branch, list_update): Derive from container_base_dispatch. * include/ext/pb_ds/list_update_policy.hpp (null_lu_metadata): Remove. (move_to_front_lu_policy): To lu_move_to_front_policy. (counter_lu_policy): To lu_counter_policy. * include/ext/pb_ds/tree_policy.hpp (null_tree_node_update): Remove. * include/ext/pb_ds/tag_and_trait.hpp (container_base_dispatch): Adjust template parameters, declare here. (null_mapped_type) Remove. (null_type): Just use this for template tricks everywhere. * include/ext/pb_ds/hash_policy.hpp (null_hash_fn, null_probe_fn): Remove. * include/ext/pb_ds/trie_policy.hpp (null_trie_node_update): Remove. (string_trie_e_access_traits): To trie_string_access_traits. * include/ext/pb_ds/priority_queue.hpp: Use container_base_dispatch. File changes. * include/Makefile.am (pb_headers): Removed and changed file names. * include/Makefile.in: Regenerated. * include/ext/pb_ds/detail/basic_types.hpp: Remove. * include/ext/pb_ds/detail/bin_search_tree_/ cond_dtor_entry_dealtor.hpp: Remove. * include/ext/pb_ds/detail/bin_search_tree_/ cond_key_dtor_entry_dealtor.hpp: Remove. * include/ext/pb_ds/detail/binary_heap_/const_point_iterator.hpp: Move.. * include/ext/pb_ds/detail/binary_heap_/ point_const_iterator.hpp: ..here. * include/ext/pb_ds/detail/basic_tree_policy: Move to... * include/ext/pb_ds/detail/branch_policy: This. * include/ext/pb_ds/detail/branch_policy/ basic_tree_policy_base.hpp: Move... * include/ext/pb_ds/detail/branch_policy/branch_policy.hpp: ...here. * include/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp: Add. * include/ext/pb_ds/detail/branch_policy/traits.hpp: Add. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ null_metadata.hpp: Remove. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ const_point_iterator.hpp: Move... * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ point_const_iterator.hpp: ...here. * include/ext/pb_ds/detail/list_update_policy/ counter_lu_metadata.hpp: Move.. * include/ext/pb_ds/detail/list_update_policy/ lu_counter_metadata.hpp: ...here. * include/ext/pb_ds/detail/list_update_policy/ counter_lu_policy_imp.hpp: Remove. * include/ext/pb_ds/detail/list_update_policy/ mtf_lu_policy_imp.hpp: Remove. * include/ext/pb_ds/detail/trie_policy/ string_trie_e_access_traits_imp.hpp: Move... * include/ext/pb_ds/detail/trie_policy/ sample_trie_access_traits.hpp: ...here. * include/ext/pb_ds/detail/trie_policy/ sample_trie_e_access_traits.hpp: Move... * include/ext/pb_ds/detail/trie_policy/ trie_string_access_traits_imp.hpp: ...here. * include/ext/pb_ds/detail/trie_policy/null_node_update_imp.hpp: Remove. * include/ext/pb_ds/detail/tree_policy/null_node_update_imp.hpp: Remove. * include/ext/pb_ds/detail/ov_tree_map_/cond_dtor.hpp: Remove. * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: New, fold all types found in the following files into pat_trie_base. * include/ext/pb_ds/detail/pat_trie_/const_child_iterator.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/ cond_dtor_entry_dealtor.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/child_iterator.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/head.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/leaf.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/node_base.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/node_metadata_base.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/node_iterators.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/point_iterators.hpp: Folded. * include/ext/pb_ds/detail/pat_trie_/synth_e_access_traits.hpp: Move... * include/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp: ...here. * include/ext/pb_ds/detail/unordered_iterator/ const_point_iterator.hpp: Move... * include/ext/pb_ds/detail/unordered_iterator/ point_const_iterator.hpp: ...here. Adjust for above changes. * include/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp: Same. * include/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp: Same. * include/ext/pb_ds/detail/resize_policy/ sample_resize_trigger.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_base_/ binomial_heap_base_.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_base_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_base_/ split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/container_base_dispatch.hpp: Same. Adjust for template parameter ordering change. * include/ext/pb_ds/detail/cc_hash_table_map_/ erase_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ constructor_destructor_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ insert_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ policy_access_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ resize_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ constructor_destructor_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ insert_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ entry_list_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ find_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ debug_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ constructor_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ cond_key_dtor_entry_dealtor.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ debug_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ erase_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ iterators_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ resize_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/cc_hash_table_map_/ standard_policies.hpp: Same. * include/ext/pb_ds/detail/tree_trace_base.hpp: Same. * include/ext/pb_ds/detail/unordered_iterator/iterator.hpp: Same. * include/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp: Same. * include/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/traits.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/ policy_access_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/ split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_policy/ sample_update_policy.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ erase_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ constructor_destructor_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ insert_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ policy_access_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ resize_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ constructor_destructor_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ insert_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ iterator_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ find_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ find_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ debug_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ constructor_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ debug_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ erase_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ resize_no_store_hash_fn_imps.hpp: Same. * include/ext/pb_ds/detail/gp_hash_table_map_/ standard_policies.hpp: Same. * include/ext/pb_ds/detail/standard_policies.hpp: Same. * include/ext/pb_ds/detail/types_traits.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/const_iterator.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/entry_pred.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/resize_policy.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp: Same. * include/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp: Same. * include/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp: Same. * include/ext/pb_ds/detail/tree_policy/ sample_tree_node_update.hpp: Same. * include/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp: Same. * include/ext/pb_ds/detail/trie_policy/ sample_trie_node_update.hpp: Same. * include/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp: Same. * include/ext/pb_ds/detail/trie_policy/ prefix_search_node_update_imp.hpp: Same. * include/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp: Same. * include/ext/pb_ds/detail/cond_dealtor.hpp: Same. * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: Same. Adjust for template parameter change, fold into container_base_dispatch. * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pairing_heap_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp: Same. * include/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp: Same. * include/ext/pb_ds/detail/constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/type_utils.hpp: Same. * include/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp: Same. * include/ext/pb_ds/detail/eq_fn/eq_by_less.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ policy_access_fn_imps.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ left_child_next_sibling_heap_.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ const_iterator.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ node.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ iterators_fn_imps.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/traits.hpp: Same. * include/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp: Same. * include/ext/pb_ds/detail/debug_map_base.hpp: Same. * include/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp: Same. * include/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp: Same. * include/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp: Same. * include/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp: Same. * include/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp: Same. * include/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp: Same. * include/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/node.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp: Same. * include/ext/pb_ds/detail/splay_tree_/traits.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/ entry_metadata_base.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/ constructor_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/ rc_binomial_heap_.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp: Same. * include/ext/pb_ds/detail/rc_binomial_heap_/ split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/node.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp: Same. * include/ext/pb_ds/detail/rb_tree_map_/traits.hpp: Same. Documentation changes. * include/ext/pb_ds/*: Add doxygen markup. * doc/doxygen/user.cfg.in: Add details for extracting comments from pb_ds. * scripts/run_doxygen: Fixup __gnu_pb_ds::detail. * scripts/make_graph.py: Move to svg output. Re-format generated tables. * doc/Makefile.am (stamp-html-copy): New rule. (stamp-html): Use it to copy non-generated files into html docs. * doc/Makefile.in: Regenerated. * doc/html/ext/pb_ds/sample_trie_e_access_traits.html: Move... * doc/html/ext/pb_ds/trie_string_access_traits.html: ...here. * doc/html/ext/pb_ds/string_trie_e_access_traits.html: Move.. * doc/html/ext/pb_ds/sample_trie_access_traits.html: ...here. * doc/html/ext/pb_ds/tree_text_lor_find_timing_test_local.png, hash_random_int_erase_mem_usage_test_local.png, multimap_text_insert_mem_usage_test_small_s2p_hash_local.png, tree_text_insert_timing_test_pat_trie_local.png , multimap_text_insert_mem_usage_test_small_s2p_tree_local.png , priority_queue_text_modify_down_timing_test_local.png, gp_hash_random_int_subscript_timing_test_find_local.png, text_find_timing_test_hash_local.png, multimap_text_insert_timing_test_small_s2p_hash_local.png, multimap_text_insert_timing_test_small_s2p_tree_local.png, multimap_text_insert_mem_usage_test_large_s2p_hash_local.png, multimap_text_insert_mem_usage_test_large_s2p_tree_local.png, multimap_text_insert_timing_test_large_s2p_hash_local.png, hash_zlob_random_int_find_timing_test_local.png, multimap_text_insert_timing_test_large_s2p_tree_local.png, binary_priority_queue_random_int_push_timing_test_local.png, priority_queue_text_pop_mem_usage_test_local.png, priority_queue_text_modify_down_timing_test_pairing_thin_local.png, tree_split_join_timing_test_local.png, multimap_text_find_timing_test_small_s2p_hash_local.png, ccgp_hash_random_int_subscript_timing_test_insert_local.png, priority_queue_random_int_push_pop_timing_test_local.png, multimap_text_find_timing_test_small_s2p_tree_local.png, gp_hash_random_int_subscript_timing_test_insert_local.png, priority_queue_text_push_timing_test_local.png, cc_hash_random_int_subscript_timing_test_find_local.png, tree_text_insert_timing_test_vector_tree_local.png, multimap_text_find_timing_test_large_s2p_hash_local.png, pairing_priority_queue_text_push_timing_test_local.png, tree_order_statistics_timing_test_local.png, priority_queue_text_push_pop_timing_test_local.png, text_find_timing_test_tree_like_local.png, multimap_text_find_timing_test_large_s2p_tree_local.png, priority_queue_text_modify_up_timing_test_pairing_thin_local.png, cc_hash_random_int_subscript_timing_test_insert_local.png, priority_queue_text_modify_up_timing_test_local.png, random_int_find_find_timing_test_tree_local.png, priority_queue_random_int_push_timing_test_local.png, tree_text_insert_timing_test_node_tree_local.png, pairing_priority_queue_text_push_pop_timing_test_local.png, gp_hash_random_int_find_timing_test_local.png, cc_hash_random_int_find_timing_test_local.png, priority_queue_text_join_timing_test_local.png: Update local pngs. Testsuite changes. * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: New. * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Fix typo. * testsuite/ext/pb_ds/example/basic_set.cc: Update. * testsuite/ext/pb_ds/example/ranged_hash.cc: Same. * testsuite/ext/pb_ds/example/tree_order_statistics.cc: Same. * testsuite/ext/pb_ds/example/trie_prefix_search.cc: Same. * testsuite/ext/pb_ds/example/trie_dna.cc: Same. * testsuite/ext/pb_ds/example/tree_intervals.cc: Same. * testsuite/ext/pb_ds/example/basic_multimap.cc: Same. * testsuite/performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same. * testsuite/performance/ext/pb_ds/tree_split_join_timing.cc: Same. * testsuite/performance/ext/pb_ds/tree_order_statistics_timing.cc: Same. * testsuite/data/make_graph_test_infos.xml: Same. * testsuite/util/regression/common_type.hpp: Same. * testsuite/util/regression/trait/assoc/native_type_trait.hpp: Same. * testsuite/util/regression/trait/assoc/trait.hpp: Same. * testsuite/util/regression/trait/assoc/type_trait.hpp: Same. * testsuite/util/regression/rand/priority_queue/ rand_regression_test.hpp: Same. * testsuite/util/regression/rand/priority_queue/ container_rand_regression_test.tcc: Same. * testsuite/util/regression/rand/assoc/rand_regression_test.hpp: Same. * testsuite/util/regression/rand/assoc/container_rand_regression_test.h * testsuite/util/regression/rand/assoc/ container_rand_regression_test.tcc: Same. * testsuite/util/native_type/native_priority_queue.hpp: Same. * testsuite/util/native_type/native_multimap.hpp: Same. * testsuite/util/native_type/native_hash_multimap.hpp: Same. * testsuite/util/native_type/native_set.hpp: Same. * testsuite/util/native_type/native_map.hpp: Same. * testsuite/util/native_type/native_hash_set.hpp: Same. * testsuite/util/native_type/native_hash_map.hpp: Same. * testsuite/util/testsuite_containers.h * testsuite/util/common_type/priority_queue/common_type.hpp: Same. * testsuite/util/common_type/assoc/common_type.hpp: Same. * testsuite/util/common_type/assoc/string_form.hpp: Same. * testsuite/util/common_type/assoc/template_policy.hpp: Same. * testsuite/util/common_type/assoc/detail/ trigger_policy_string_form.hpp: Same. * testsuite/util/common_type/assoc/detail/ds_string_form.hpp: Same. * testsuite/util/common_type/assoc/detail/ size_policy_string_form.hpp: Same. * testsuite/util/common_type/assoc/detail/ probe_fn_string_form.hpp: Same. * testsuite/util/common_type/assoc/detail/ tree_supports_order_statistics.hpp: Same. * testsuite/util/common_type/assoc/detail/ trie_supports_prefix_search.hpp: Same. * testsuite/util/common_type/assoc/detail/ list_update_policy_string_form.hpp: Same. * testsuite/util/common_type/assoc/detail/ trie_supports_order_statistics.hpp: Same. * testsuite/util/common_type/assoc/native_set.hpp: Same. * testsuite/util/performance/assoc/timing/common_type.hpp: Same. * testsuite/util/performance/assoc/timing/multimap_find_test.hpp: Same. * testsuite/util/performance/assoc/multimap_common_type.hpp: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174100 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/24163jason2011-05-2012-42/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR c++/29131 gcc/cp/ * pt.c (tsubst_copy_and_build) [CALL_EXPR]: Avoid repeating unqualified lookup. * semantics.c (perform_koenig_lookup): Add complain parm. * cp-tree.h: Adjust. * parser.c (cp_parser_postfix_expression): Adjust. (cp_parser_perform_range_for_lookup): Adjust. libstdc++-v3/ * include/ext/pb_ds/assoc_container.hpp: Explicitly qualify calls to functions from dependent bases. * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/rb_tree_map_/ split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/splay_tree_/ split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/tree_policy/ order_statistics_imp.hpp: Likewise. * include/ext/pb_ds/detail/trie_policy/ prefix_search_node_update_imp.hpp: Likewise. * include/ext/rc_string_base.h: Likewise. * include/ext/rope: Likewise. * include/ext/ropeimpl.h: Likewise. * testsuite/util/exception/safety.h: Likewise. * testsuite/util/native_type/native_priority_queue.hpp: Likewise. * testsuite/util/testsuite_io.h: Likewise. * include/std/functional: Declare mem_fn earlier. * include/tr1/functional: Likewise. * include/tr1/exp_integral.tcc: Declare __expint_E1 earlier. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173965 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-11 François Dumont <francois.cppdevs@free.fr>fdumont2011-05-1129-294/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/ext/pb_ds/detail/resize_policy/ hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY. * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp, find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp, constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND. * include/ext/pb_ds/detail/debug_map_base.hpp, splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp, cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp, leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp, bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp, rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY, PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate macro definitions move... * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here... * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here. * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp, resize_policy.hpp, pairing_heap_/pairing_heap_.hpp, left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp, binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp, rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY): Duplicate macro definitions move... * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp: ...here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173670 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-07 François Dumont <francois.cppdevs@free.fr>fdumont2011-05-07115-1348/+1687
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New. (_GLICXX_DEBUG_VERIFY): Use latter. * include/ext/pb_ds/detail/resize_policy/ hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line containing the original assert call. * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp, find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/cc_hash_table_map_/ erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp, find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp, insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp, constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp, leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp: Likewise. * include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp, r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp, bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/gp_hash_table_map_/ erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp, find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp, resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp, resize_policy.hpp, split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp, find_fn_imps.hpp, insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/binomial_heap_/ constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, binomial_heap_.hpp: Likewise. * include/ext/pb_ds/detail/left_child_next_sibling_heap_/ erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp, find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp, ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/debug_map_base.hpp: Likewise. * include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp, find_fn_imps.hpp, insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise. * include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp, find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp, insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp, rc_binomial_heap_.hpp, insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp, split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp, insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise. * include/ext/pb_ds/hash_policy.hpp: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173529 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud