2011-12-30 Jonathan Wakely * doc/xml/manual/extensions.xml: Improve markup and note that some extensions are included in C++11. * doc/xml/manual/concurrency_extensions.xml: Likewise. 2011-12-30 Paolo Carlini PR libstdc++/51711 * include/bits/regex.h (regex_replace): Fix thinko. * testsuite/28_regex/algorithms/regex_replace/char/51711.cc: New. * testsuite/28_regex/algorithms/regex_replace/wchar_t/51711.cc: Likewise. 2011-12-29 Paolo Carlini * include/bits/hashtable_policy.h (struct _Ebo_helper<>): Don't use _N, badname on Solaris; minor stylistic changes. 2011-12-29 François Dumont PR libstdc++/51608 * include/bits/hashtable_policy.h (_Equal_helper<>): New, change the way the _Equal functor is used depending on whether hash code is cached or not. (_Ebo_helper<>): New helper type to introduce EBO when possible. (_Hash_code_base): Use _Ebo_helper to limit memory footprint. Move _Equal functor management... (_Hashtable_base): ...here, new, use _Equal_helper. (_Local_iterator_base<>, _Local_iterator<>, _Local_const_iterator<>): New, use _Hash_code_base, implementation of... * include/bits/hashtable.h (_Hashtable<>::local_iterator, _Hashtable<>::const_local_iterator): ...those. Add static assertions checking that some functors are empty depending on whether hash code is cache or not. (_Hashtable<>::_M_bucket_index): New overloads using current bucket count, use through out the _Hastable<> implementation. * include/bits/unordered_set.h (__unordered_set<>, __unordered_multiset<>): Cache hash code iff hash functor is not empty and not final. * include/bits/unordered_map.h (__unordered_map<>, __unordered_multimap<>): Likewise. * include/debug/unordered_map (unordered_map<>::_S_to_local, unordered_multimap<>::_S_to_local): Adapt to match new local iterator implementation. * include/debug/unordered_set (unordered_set<>::_S_to_local, unordered_multiset<>::_S_to_local): Likewise. * include/profile/unordered_map (unordered_map<>::_M_profile_destruct, unordered_multimap<>::_M_profile_destruct): Enhance thanks to usage of local iterators. * include/profile/unordered_set (unordered_set<>::_M_profile_destruct, unordered_multiset<>::_M_profile_destruct): Likewise. * testsuite_files/23_containers/unordered_set/instantiation_neg.cc: Fix error line. * testsuite_files/23_containers/unordered_set/final_hash.cc: New. * testsuite_files/23_containers/unordered_multiset/final_hash.cc: New. * testsuite_files/23_containers/unordered_map/final_hash.cc: New. * testsuite_files/23_containers/unordered_multimap/final_hash.cc: New. 2011-12-29 Jonathan Wakely PR libstdc++/51701 * doc/xml/manual/extensions.xml (Input and Output): Remove reference to RWLock class. 2011-12-23 Jonathan Wakely * testsuite/tr1/2_general_utilities/shared_ptr/cons/ weak_ptr_expired.cc: Modify to PASS instead of XFAIL. 2011-12-23 Kai Tietz * config/os/mingw32-w64/os_defines.h (__USE_MINGW_ANSI_STDIO): Define. 2011-12-23 Jonathan Wakely * include/c_global/cinttypes: Update comments that refer to TR1. 2011-12-23 Jonathan Wakely PR libstdc++/49204 * include/std/future (future_errc): Implement LWG 2056. 2011-12-23 Jonathan Wakely * include/bits/regex.h (match_results::size_type): Use allocator_traits. 2011-12-22 Jonathan Wakely PR libstdc++/48362 * testsuite/libstdc++-prettyprinters/48362.cc: New. 2011-12-22 Jonathan Wakely PR libstdc++/48362 * python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle empty tuples. 2011-12-20 Jonathan Wakely PR libstdc++/51365 * include/std/tuple (_Tuple_impl): Check __is_final as well as is_empty. * testsuite/20_util/tuple/51365.cc: New. 2011-12-19 Benjamin Kosnik * libsupc++/eh_tm.cc (free_any_cxa_exception): Use __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4. 2011-12-19 Benjamin Kosnik * testsuite/performance/25_algorithms/search_n.cc: Disambiguate local variable. 2011-12-18 Jonathan Wakely * doc/xml/manual/iterators.xml: Replace "sect1" with "section". * doc/xml/manual/algorithms.xml: Likewise. * doc/html/manual/iterators.html: Likewise. * doc/html/manual/algorithms.html: Likewise. 2011-12-15 Paolo Carlini Jonathan Wakely PR libstdc++/51558 * include/bits/functional_hash.h (struct hash): Add static_assert. * src/compatibility-c++0x.cc: Adjust compatibility definitions. * testsuite/23_containers/unordered_map/erase/51142.cc: Adjust. * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise. 2011-12-15 Benjamin Kosnik * testsuite/22_locale/num_put/put/char/9780-2.cc: Add test for "C" locale, add sanity checks in case of grouping. 2011-12-15 Jonathan Wakely PR libstdc++/51540 * include/bits/stl_numeric.h (partial_sum): Adjust doxygen comments. 2011-12-12 Paolo Carlini Revert: 2011-12-12 Kai Tietz PR libstdc++/51135 * libsupc++/cxxabi.h (__cxa_dtor_type): New type. (__cxa_throw): Use it for destructor-argument. * libsupc++/eh_throw.cc (__cxa_throw): Likewise. * libsupc++/unwind-cxx.h (__cxa_exception): Change type of member exceptionDestructor to __cxa_dtor_type. * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR): Define. (__cxa_dtor_type): Declare target secific type variant. * config/os/mingw32/os_defines.h: Likewise. 2011-12-12 Kai Tietz PR libstdc++/51135 * libsupc++/cxxabi.h (__cxa_dtor_type): New type. (__cxa_throw): Use it for destructor-argument. * libsupc++/eh_throw.cc (__cxa_throw): Likewise. * libsupc++/unwind-cxx.h (__cxa_exception): Change type of member exceptionDestructor to __cxa_dtor_type. * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR): Define. (__cxa_dtor_type): Declare target secific type variant. * config/os/mingw32/os_defines.h: Likewise. 2011-12-11 Jonathan Wakely * doc/xml/manual/abi.xml: Replace gcc-x.y.z with GCC x.y.z or x.y, remove excessive duplication of version information. * doc/html/*: Regenerate. 2011-12-10 Benjamin Kosnik * doc/doxygen/user.cfg.in: Add macros, directories. * include/bits/locale_classes.h: Remove doxygen warnings, fix markup. * include/bits/locale_classes.tcc: Same. * include/bits/shared_ptr.h: Same. * include/bits/stl_algo.h: Same. * include/bits/stl_list.h: Same. * include/bits/stl_numeric.h: Same. * include/debug/safe_base.h: Same. * include/parallel/equally_split.h: Same. * include/std/bitset: Same. * include/std/complex: Same. * include/std/fstream: Same. * include/std/istream: Same. * include/std/ostream: Same. * include/tr2/dynamic_bitset: Same. * scripts/run_doxygen: Remove munging for names that no longer exist. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust line numbers. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same. 2011-12-10 François Dumont * include/profile/unordered_set: Minor formatting changes. (unordered_set<>::_M_profile_destruct, unordered_multiset<>::_M_profile_destruct): Fix implementation to not rely on normal implementation details anymore. (unordered_set<>::_M_profile_resize, unordered_multiset<>::_M_profile_resize): Implement consistently accross all unordered containers. (unordered_set<>::emplace, unordered_set<>::emplace_hint, unordered_multiset<>::emplace, unordered_multset<>::emplace_hint): Add to signal rehash to profiling system. * include/profile/unordered_map: Likewise for unordered_map<> and unordered_multimap<>. 2011-12-09 François Dumont PR libstdc++/44436 (unordered containers emplace, emplace_hint bits) * include/bits/hashtable.h (_Hashtable<>::emplace, _Hashtable<>::emplace_hint): Add. * include/debug/unordered_set (unordered_set<>::emplace, unordered_set<>::emplace_hint, unordered_multiset<>::emplace, unordered_multiset<>::emplace_hint): Add. * include/profile/unordered_set: Likewise. * include/debug/unordered_map (unordered_map<>::emplace, unordered_map<>::emplace_hint, unordered_multimap<>::emplace, unordered_multimap<>::emplace_hint): Add. * include/profile/unordered_map: Likewise. * testsuite/23_containers/unordered_map/modifiers/emplace.cc: New. * testsuite/23_containers/unordered_multimap/modifiers/emplace.cc: New. * testsuite/23_containers/unordered_set/modifiers/emplace.cc: New. * testsuite/23_containers/unordered_multiset/modifiers/emplace.cc: New. * testsuite/util/testsuite_container_traits.h (traits_base::has_emplace): Add and defined as std::true_type for unordered containers. * testsuite/util/exception/safety.h (emplace, emplace_hint): Add and use them in basic_safety exception test case. * doc/xml/manual/status_cxx2011.xml: Update unordered containers status. 2011-12-08 Jonathan Wakely * include/bits/atomic_base.h (__calculate_memory_order): Rename to... (__cmpexch_failure_order): This, and rewrite as constexpr function. (compare_exchange_strong, compare_exchange_weak): Use it. * include/std/atomic (compare_exchange_strong, compare_exchange_weak): Likewise. 2011-12-07 François Dumont PR libstdc++/51386 * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt): Fix computation of _M_prev_resize so that hashtable do not keep on being rehashed when _M_max_load_factor is lower than 1. 2011-12-06 Paolo Carlini PR libstdc++/51438 * libsupc++/nested_exception.h (nested_exception::~nested_exception): Declare noexcept. * libsupc++/nested_exception.cc: Adjust. * testsuite/18_support/nested_exception/51438.cc: New. * testsuite/18_support/nested_exception/throw_with_nested.cc: Adjust. * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Likewise. * src/shared_ptr.cc: Use noexcept where appropriate. * include/std/system_error: Likewise. * include/std/functional: Likewise. * include/bits/shared_ptr_base.h: Likewise. * src/stdexcept.cc: Use _GLIBCXX_USE_NOEXCEPT where appropriate. * include/std/stdexcept: Likewise. * libsupc++/bad_cast.cc: Likewise. * libsupc++/bad_typeid.cc: Likewise. * libsupc++/eh_exception.cc: Likewise. * libsupc++/typeinfo: Likewise. * libsupc++/exception: Likewise. * libsupc++/eh_ptr.cc: Likewise. * libsupc++/bad_alloc.cc: Likewise. * libsupc++/exception_ptr.h: Likewise. * include/std/chrono: Use noexcept where appropriate. * src/chrono.cc: Likewise. 2011-12-06 Jonathan Wakely Chris Jefferson PR libstdc++/51183 * include/std/stl_pair.h (pair<>::__cons, pair<>::__do_cons): Remove. (pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Only declare. (pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)): Declare. * include/std/tuple (pair<>::__cons, pair<>::__do_cons): Remove. (pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)): Define. (pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Define, delegating to the latter. * testsuite/20_util/pair/piecewise2.cc: New. 2011-12-05 Paolo Carlini * libsupc++/initializer_list: Do not declare anything if __GXX_EXPERIMENTAL_CXX0X__ is not defined. 2011-12-04 Jonathan Wakely * include/std/type_traits: Doxygen improvements. * include/bits/move.h: Likewise. * include/tr1/type_traits: Likewise. * include/tr2/type_traits: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error line numbers * testsuite/20_util/forward/c_neg.cc: Likewise. * testsuite/20_util/forward/f_neg.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. 2011-12-04 Markus Trippelsdorf Jonathan Wakely * include/bits/stl_heap.h (pop_heap): Check for non-empty range in overload taking a predicate. * testsuite/25_algorithms/pop_heap/empty2_neg.cc: New. 2011-12-03 Jonathan Wakely * include/debug/macros.h (__glibcxx_check_non_empty_range): Define. * include/debug/debug.h (__glibcxx_requires_non_empty_range): Define. * include/debug/formatter.h (__msg_non_empty_range): Add. * src/debug.cc: Message text for __msg_non_empty_range. * include/bits/stl_heap.h (pop_heap): Check for non-empty range. * testsuite/25_algorithms/pop_heap/empty_neg.cc: New. 2011-12-03 Jonathan Wakely * doc/xml/manual/utilities.xml: Remove outdated text. 2011-12-02 Paolo Carlini * include/std/iomanip (put_money): Fix thinko, use __err local, like in, eg, basic_ostream::_M_insert. 2011-11-30 Benjamin Kosnik * 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: Adjust. * doc/xml/manual/concurrency_extensions.xml: Add note. * testsuite/18_support/exception_ptr/lifespan.cc: Tweak. * testsuite/lib/libstdc++.exp: Same. 2011-11-29 François Dumont * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Remove code useless now that the hashtable implementation put the hash code in cache if the hash functor throws. * testsuite/23_containers/unordered_set/erase/1.cc: Enhance test by checking also distance between begin and end iterators to validate underlying data model. * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise. * testsuire/23_containers/unordered_map/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/2.cc: New. * testsuite/23_containers/unordered_multimap/erase/2.cc: New. 2011-11-28 Andrew MacLeod * include/bits/atomic_base.h (ATOMIC_*_LOCK_FREE): Use new cpp predefined macros. * testsuite/29_atomics/headers/atomic/macros.cc: Add BOOL and POINTER macro checks. Check for expected compile time values. 2011-11-28 Paolo Carlini PR libstdc++/51288 * include/std/iomanip (get_money, put_money): Use sentry. * testsuite/27_io/manipulators/extended/get_money/char/51288.cc: New. * testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc: Likewise. * testsuite/27_io/manipulators/extended/put_money/char/51288.cc: Likewise. * testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc: Likewise. 2011-11-27 Gerald Pfeifer * doc/xml/manual/using.xml (Prerequisites): Refer to x86 instead of i386. 2011-11-27 Gerald Pfeifer * scripts/run_doxygen (problematic): Change Linux reference to GNU/Linux. 2011-11-26 Gerald Pfeifer * doc/xml/manual/abi.xml (Prerequisites): Refer to GNU/Linux. Fix reference to GCC. 2011-11-26 Jonathan Wakely PR libstdc++/51296 * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run on alpha*-*-osf*. * testsuite/30_threads/future/cons/constexpr.cc: Disable debug symbols. * testsuite/30_threads/shared_future/cons/constexpr.cc: Likewise. 2011-11-23 François Dumont PR libstdc++/41975 * include/bits/hashtable.h (_Hashtable<>): Major data model modification to limit performance impact of empty buckets in erase(iterator) implementation. * include/bits/hashtable_policy.h (_Hashtable_iterator, _Hashtable_const_iterator): Remove not used anymore. * include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove _M_grow_factor, just use natural evolution of prime numbers. Add _M_prev_size to know when the number of buckets can be reduced. * include/bits/unordered_set.h (__unordered_set<>, __unordered_multiset<>), unordered_map.h (__unordered_map<>, __unordered_multimap<>): Change default value of cache hash code template parameter, false for integral types with noexcept hash functor, true otherwise. * include/debug/unordered_map, unordered_set: Adapt transformation from iterator/const_iterator to respectively local_iterator/const_local_iterator. * testsuite/performance/23_containers/copy_construct/unordered_set.cc: New. * testsuite/23_containers/unordered_set/instantiation_neg.cc: New. * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: New. * testsuite/23_containers/unordered_multiset/cons/copy.cc: New. * testsuite/23_containers/unordered_multiset/erase/1.cc, 24061-multiset.cc: Add checks on the number of bucket elements. * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc, multiset_single.cc, multiset_single_move.cc: Likewise. 2011-11-21 Jonathan Wakely * include/std/functional (is_placeholder, is_bind_expression): Add partial specializations for cv-qualified types. * include/tr1/functional (is_placeholder, is_bind_expression): Add partial specializations for std::bind and std::placeholders and for cv-qualified types. * testsuite/20_util/bind/cv_quals_3.cc: New. * testsuite/tr1/3_function_objects/bind/cv_quals.cc: New. * testsuite/tr1/3_function_objects/bind/mixed.cc: New. 2011-11-21 Andreas Tobler * configure: Regenerate. 2011-11-21 Daniel Krugler PR libstdc++/51185 * include/std/type_traits (__is_base_to_derived_ref, __is_lvalue_to_rvalue_ref): Fix. * testsuite/20_util/is_constructible/51185.cc: New. * testsuite/20_util/is_constructible/value-2.cc: Extend. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error line number. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc Likewise. 2011-11-21 Paolo Carlini * include/std/tuple (__conv_types, __one_by_one_convertible, __all_convertible): Remove. (tuple<>::tuple(_UElements&&...), tuple<>::tuple(const tuple<_UElements...>&), tuple<>::tuple(tuple<_UElements...>&&)): Remove wa for c++/48322. * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line number. 2011-11-20 Jason Merrill PR c++/48322 * include/std/tuple (tuple(_UElements&&...)): Fix SFINAE. * testsuite/20_util/bind/ref_neg.cc: Adjust error markings. 2011-11-20 Jonathan Wakely * include/backward/binders.h: Fix examples in doxygen comments and suggest using std::bind instead. 2011-11-20 Jonathan Wakely * doc/xml/manual/status_cxx2011.xml: Fix docbook markup. 2011-11-20 Jonathan Wakely * doc/xml/manual/appendix_contributing.xml: Do not use "here" as link text. * doc/xml/faq.xml: Likewise. Do not request standard library issues to be reported to the libstdc++ mailing list. * doc/xml/manual/status_cxx2011.xml: Document implementation-defined behaviour. * doc/xml/manual/status_cxxtr1.xml: Likewise. * doc/xml/manual/utilities.xml: Fix grammar, probably caused by a global search and replace of "part" by "chapter". * doc/xml/manual/shared_ptr.xml: Remove outdated information. * doc/xml/manual/messages.xml: Be more specific about systems where using 'int' for catalog handle is not a problem, mention LWG issue. 2011-11-19 Paolo Carlini * include/debug/bitset (operator[](size_t) const): Declare constexpr. * include/profile/bitset: Likewise. * testsuite/23_containers/bitset/operations/constexpr.cc: Split out non portable bits to... * testsuite/23_containers/bitset/operations/constexpr-2.cc: ... here. 2011-11-18 Harti Brandt PR libstdc++/51209 * include/bits/hashtable.h (_Hashtable<>::_M_find_node): Return nullptr when no node is found. * include/tr1/hashtable.h (_Hashtable<>::_M_find_node): Return zero when no node is found. 2011-11-18 Paolo Carlini * 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::operator(), hash::operator(), hash::operator()): Declare noexcept. * include/debug/bitset (hash<__debug::bitset>::operator()): Likewise. * include/debug/vector (hash<__debug::vector>::operator()): Likewise. * include/std/system_error (hash::operator()): Likewise. * include/std/thread (hash::operator()): Likewise. * include/std/bitset (hash::operator()): Likewise. * include/std/typeindex (hash::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::operator()): Likewise. * include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()): Likewise. * include/bits/unique_ptr.h (hash::operator()): Likewise. * include/bits/basic_string.h (hash::operator(), hash::operator(), hash::operator(), hash::operator()): Likewise. * include/bits/vector.tcc (hash::operator()): Likewise. * include/bits/stl_bvector.h (hash::operator()): Likewise. * libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of throw(). 2011-11-17 Richard Henderson PR libstdc++/51181 * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4. 2011-11-18 Jonathan Wakely * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run on darwin. 2011-11-17 Jason Merrill * testsuite/21_strings/basic_string/cons/char/moveable2.cc (tstring): Add defaulted move assignment. * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc (tstring): Add defaulted move assignment. * testsuite/util/testsuite_tr1.h (NoexceptMoveConsClass): Add defaulted move assignment operator. (NoexceptMoveAssignClass): Add defaulted move constructor. 2011-11-17 Jonathan Wakely * doc/xml/manual/status_cxx2011.xml: Status of piecewise construction and ios_base::failure. * doc/xml/manual/backwards_compatibility.xml: List headers in alphabetical order. 2011-11-16 Andrew MacLeod PR libstdc++/51102 * include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE, ATOMIC_POINTER_LOCK_FREE): New. Add missing macros. 2011-11-15 Paolo Carlini PR libstdc++/51142 * include/debug/unordered_map (unordered_map<>::erase(iterator), unordered_multimap<>::erase(iterator)): Add, consistently with LWG 2059. * include/debug/unordered_set (unordered_set<>::erase(iterator), unordered_multiset<>::erase(iterator)): Likewise. * include/debug/map.h (map<>::erase(iterator)): Likewise. * include/debug/multimap.h (multimap<>::erase(iterator)): Likewise. * include/profile/map.h (map<>::erase(iterator)): Likewise. * include/profile/multimap.h (multimap<>::erase(iterator)): Likewise. * include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise. * include/bits/stl_map.h (map<>::erase(iterator)): Likewise. * include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise. * include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise. * testsuite/23_containers/unordered_map/erase/51142.cc: New. * testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise. * testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise. * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise. * testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise. * testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise. 2011-11-15 Jason Dick PR libstdc++/51133 * include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix wrong sign in recursion relation. 2011-11-14 Paolo Carlini * include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr, not viable anyway due to the pointer parameter. 2011-11-13 Paolo Carlini * include/c_global/cmath (atan2, fmod, pow, copysign, fdim, fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify constraining on the return type. * include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot, nextafter, remainder, remquo): Likewise. 2011-11-13 Gerald Pfeifer * using.xml: Use GNU/Linux. 2011-11-12 Jason Merrill PR c++/51060 * testsuite/25_algorithms/max/1.cc (test01): Drop references. * testsuite/25_algorithms/min/1.cc (test01): Drop references. * testsuite/25_algorithms/minmax/1.cc (test01): Drop references. 2011-11-12 Jonathan Wakely PR libstdc++/51083 * 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. 2011-11-10 Andrew MacLeod PR middle-end/51038 * include/bits/atomic_base.h (atomic_thread_fence): Call built-in. (atomic_signal_fence): Call built-in. (test_and_set, clear): Call new atomic built-ins. 2011-11-09 Jonathan Wakely * include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create the new object with the same allocator. * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: New. 2011-11-09 Jonathan Wakely * include/profile/unordered_map: Add missing copy constructors. * include/profile/unordered_set: Likewise. 2011-11-09 Dodji Seketeli PR c++/51027 * include/ext/pointer.h (rebind): Append missing ';'. 2011-11-09 Jonathan Wakely * include/bits/stl_vector.h (vector::_Alloc_traits): Make private. * include/debug/vector: Add allocator-extended constructors, ensure move assignment and swap have same allocator propagation semantics and exceptions specification as base class. * include/profile/vector: Likewise. (vector::push_back(_Tp&&)): Forward argument as rvalue. * testsuite/23_containers/vector/debug/alloc_prop.cc: New. * doc/xml/manual/status_cxx2011.xml: Clarify status of container requirements with respect to allocators. (status.iso.200x): Add anchor for old ID to preserve existing links. 2011-11-08 Jonathan Wakely * include/bits/shared_ptr_base.h (_Sp_counted_ptr): Make 'final'. (_Sp_counted_deleter): Make 'final'. Use allocator_traits. (_Sp_counted_ptr_inplace): Make 'final'. Use allocator_traits. Derive from _Sp_counted_ptr instead of _Sp_counted_deleter to use EBO for the allocator. (__shared_count, __shared_ptr): Use allocator_traits. * include/std/future (__future_base::_Result_alloc): Make 'final'. Use allocator traits. (__future_base::_Task_state): Make 'final'. (__future_base::_Deferred_state): Likewise. (__future_base::_Async_state): Likewise. * testsuite/20_util/shared_ptr/cons/alloc_min.cc: New. * testsuite/20_util/shared_ptr/creation/alloc_min.cc: New. * testsuite/20_util/shared_ptr/creation/private.cc: New. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers. * testsuite/30_threads/packaged_task/cons/alloc_min.cc: New. * testsuite/30_threads/promise/cons/alloc_min.cc: New. 2011-11-08 Paolo Carlini * acinclude.m4 ([GLIBCXX_ENABLE_VISIBILITY]): Rename to [GLIBCXX_ENABLE_LIBSTDCXX_VISIBILITY], likewise for the option itself, to --enable-libstdcxx-visibility. * configure.ac: Adjust call. * doc/xml/manual/configure.xml: Update. * configure: Regenerate. 2011-11-08 Paolo Carlini * testsuite/29_atomics/headers/atomic/macros.cc: Avoid -Wall warnings. * testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise. 2011-11-08 Jonathan Wakely PR libstdc++/51018 * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run on netbsd. 2011-11-07 Aldy Hernandez Richard Henderson Merged from transactional-memory. * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_TM_1. * libsupc++/eh_tm.cc: New file. * libsupc++/unwind-cxx.h (__cxa_tm_cleanup): Declare. * config/abi/pre/gnu.ver: Export __cxa_tm_cleanup. * config/abi/pre/gnu-versioned-namespace.ver: Likewise. * libsupc++/Makefile.am (sources): Add eh_tm.cc. * libsupc++/Makefile.in: Rebuild. 2011-11-07 Paolo Carlini PR libstdc++/51018 * include/profile/impl/profiler_node.h (__stack_hash:: operator()(__stack_t)): Just use std::size_t everywhere. 2011-11-07 Jonathan Wakely * include/std/future (__future_base::_Ptr): Use alias-declaration. (__is_same_pkgdtask): Rename to __constrain_pkgdtask and use decay instead of remove_reference so that cv-quals are removed. 2011-11-07 Ed Smith-Rowland <3dw4rd@verizon.net> * include/precompiled/stdc++.h: Add cstdalign. 2011-11-07 Paolo Carlini * include/std/complex (complex<>::real(), complex<>::imag()): Remove redundant const qualifiers. 2011-11-07 Jonathan Wakely * include/bits/ptr_traits.h (__rebind): Replace with... (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. 2011-11-07 Jonathan Wakely * include/std/mutex (call_once): Store closure in __once_functor as bound function wrapper might not be copyable. 2011-11-07 Andrew MacLeod * include/bits/atomic_base.h (atomic_thread_fence): Revert. (atomic_signal_fence): Revert. 2011-11-07 Andrew MacLeod * include/bits/atomic_base.h (atomic_thread_fence): Call builtin. (atomic_signal_fence): Call builtin. (atomic_flag::test_and_set): Call __atomic_exchange when it is lockfree, otherwise fall back to call __sync_lock_test_and_set. (atomic_flag::clear): Call __atomic_store when it is lockfree, otherwise fall back to call __sync_lock_release. 2011-11-07 Rainer Orth PR bootstrap/50982 * include/Makefile.am (${host_builddir}/gthr-posix.h): Reflect gthr-posix.h move. * include/Makefile.in: Regenerate. 2011-11-07 Jonathan Wakely * acinclude.m4 (GLIBCXX_CHECK_SC_NPROC_ONLN): Define. (GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP): Define. (GLIBCXX_CHECK_SYSCTL_HW_NCPU): Define. * configure.ac: Use new checks. * configure: Regenerate. * config.h.in: Regenerate. * src/thread.cc: Check new config macros. * testsuite/lib/libstdc++.exp: Likewise. 2011-11-07 Jonathan Wakely * config/abi/pre/gnu.ver: Fix exports for string::pop_back. 2011-11-07 Jonathan Wakely * acinclude.m4: Check for * configure: Regenerate. * config.h.in: Likewise. * include/Makefile.am: Add . * include/Makefile.in: Regenerate. * include/c_global/cstdalign: New. * testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New. * doc/xml/manual/backwards_compatibility.xml: Update. * doc/xml/manual/status_cxx2011.xml: Update. 2011-11-07 Jonathan Wakely PR libstdc++/50982 * include/std/mutex (__once_proxy): Use void parameter list to work on implicit extern "C" systems. 2011-11-07 Xinliang David Li * include/backward/hashtable.h: Make __stl_prime_list in comdat section. 2011-11-07 Jonathan Wakely * include/bits/basic_string.h (basic_string::at): Move adjacent to other 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. 2011-11-06 Jonathan Wakely * doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for C++11 compiler features and library headers. Add stable id attributes. Use element for headers and surround in angle brackets. Use for classes. * doc/html/*: Regenerate. 2011-11-06 Jonathan Wakely * doc/xml/manual/status_cxx2011.xml: Document and as missing. 2011-11-06 Jonathan Wakely * doc/xml/faq.xml: Replace references to C++0x with C++11. * doc/xml/manual/intro.xml: Likewise. * doc/xml/manual/backwards_compatibility.xml: Likewise. * doc/xml/manual/shared_ptr.xml: Likewise. * doc/xml/manual/configure.xml: Likewise. * doc/xml/manual/evolution.xml: Likewise. * doc/xml/manual/using.xml: Likewise. * doc/xml/manual/strings.xml: Likewise. * doc/xml/manual/debug_mode.xml: Likewise. * doc/xml/manual/policy_data_structures.xml: Likewise. * doc/xml/manual/extensions.xml: Likewise. * doc/xml/manual/diagnostics.xml: Likewise. * doc/xml/manual/test.xml: Likewise. * doc/xml/manual/status_cxx200x.xml: Likewise, and rename to... * doc/xml/manual/status_cxx2011.xml: Here. * doc/Makefile.am: Rename status_cxx200x.xml. * doc/Makefile.in: Regenerate. * doc/html/*: Regenerate. 2011-11-06 François Dumont * testsuite/performance/23_containers/insert_erase/41975.cc: Add tests to check performance with or without cache of hash code and with string type that has a costlier hash functor than int type. 2011-11-06 Benjamin Kosnik Andrew MacLeod Merged from cxx-mem-model. * include/Makefile.am (bits_headers): Remove atomic_0.h, atomic_2.h. * include/Makefile.in: Regenerate. * src/Makefile.am (sources): Rename atomic.cc to compatibility-atomic-c++0x.cc. * src/Makefile.in: Regenerate. * include/bits/atomic_0.h: Remove. * include/bits/atomic_2.h: Incorporate into... * include/bits/atomic_base.h: ...this. Use new __atomic routines. * include/std/atomic: Add generic atomic calls to basic atomic class. * src/atomic.cc: Move... * src/compatibility-atomic-c++0x.cc: ...here. * src/compatibility-c++0x.cc: Tweak. * testsuite/29_atomics/atomic/cons/user_pod.cc: Fix. * testsuite/29_atomics/atomic/requirements/explicit_instantiation/1.cc: Same. * testsuite/29_atomics/headers/atomic/macros.cc: Same. 2011-11-06 Jonathan Wakely * doc/xml/manual/test.xml: Fix dg-warning examples. 2011-11-06 Jonathan Wakely PR libstdc++/44436 * doc/xml/manual/status_cxx200x.xml: Document emplace members are missing. 2011-11-05 Jonathan Wakely PR libstdc++/49894 PR bootstrap/50982 * include/std/mutex (once_flag): Use NSDMI. 2011-11-04 Benjamin Kosnik * scripts/run_doxygen: Fix sed quoting. 2011-11-03 Benjamin Kosnik * doc/doxygen/doxygroups.cc: Add markup for namespace tr2. * include/tr2/bool_set: Adjust doxygen markup. * include/tr2/dynamic_bitset: Same. * include/tr2/type_traits: Same. 2011-11-03 Benjamin Kosnik * doc/html/*: Regenerate. 2011-11-02 Richard B. Kreckel Paolo Carlini PR libstdc++/50880 * include/std/complex (__complex_acosh): Fix in a better way, use Kahan's formula. * include/tr1/complex (__complex_acosh): Likewise. 2011-11-02 Paolo Carlini PR libstdc++/50951 * include/bits/random.tcc (operator<<(basic_ostream<>&, const mersenne_twister_engine<>&): Output _M_p too. (operator<<(basic_ostream<>&, const subtract_with_carry_engine<>&): Likewise. (operator>>(basic_istream<>&, mersenne_twister_engine<>&): Reload it. (operator>>(basic_istream<>&, subtract_with_carry_engine<>&): Likewise. * include/bits/random.h (mersenne_twister_engine<>::operator==): Compare _M_p too. (subtract_with_carry_engine<>::operator==): Compare _M_carry and _M_p too. (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too. * testsuite/26_numerics/random/independent_bits_engine/ operators/serialize.cc: Extend. * testsuite/26_numerics/random/subtract_with_carry_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/ operators/serialize.cc: Likewise. 2011-11-02 Rainer Orth * acinclude.m4 (GLIBCXX_CONFIGURE): Determine and substitute toplevel_builddir. (GLIBCXX_ENABLE_THREADS): Remove glibcxx_thread_h, HAVE_GTHR_DEFAULT, enable_thread. (GLIBCXX_CHECK_GTHREADS): Reflect gthr move to libgcc. * include/Makefile.am (thread_host_headers): Remove ${host_builddir}/gthr-tpf.h. (${host_builddir}/gthr.h): Reflect gthr move to libgcc. Use $<. (${host_builddir}/gthr-single.h): Likewise. (${host_builddir}/gthr-posix.h): Likewise. (${host_builddir}/gthr-tpf.h): Remove. (${host_builddir}/gthr-default.h): Likewise. * configure, config.h.in: Regenerate. * Makefile.in, doc/Makefile.in, include/Makefile.in, libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in, src/Makefile.intestsuite/Makefile.in: Regenerate. 2011-11-02 Benjamin Kosnik * include/bits/c++config: Add tr2 to versioned namespaces. * scripts/run_doxygen: Adjust generated man files as well. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers. 2011-11-02 Jonathan Wakely * include/std/future (promise): Add constructors for uses-allocator construction from rvalue promise. (packaged_task): Implement LWG 2067. Add additional constructors for uses-allocator construction. * testsuite/30_threads/packaged_task/cons/3.cc: New. * testsuite/30_threads/packaged_task/cons/alloc2.cc: New. * testsuite/30_threads/promise/cons/alloc2.cc: New. 2011-10-31 Jason Merrill * include/Makefile.am (install-freestanding-headers): Install c++0x_warning.h. * libsupc++/initializer_list: Include it. 2011-10-31 Gerald Pfeifer * acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux. * configure: Regenerate. 2011-10-31 Jason Merrill PR c++/50920 * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11. 2011-10-30 Gerald Pfeifer * prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux. Remove an obsolete reference to a Red Hat release we do not support any longer. Refer to Debian GNU/Linux. 2011-10-30 Gerald Pfeifer * faq.xml (Who's in charge of it?): Refer to the Linux kernel instead of just Linux. (How do I install libstdc++?): Refer to GNU/Linux instead of just Linux. 2011-10-28 Paolo Carlini * testsuite/30_threads/condition_variable_any/50862.cc: Trivial formatting fixes. 2011-10-28 Paolo Carlini * testsuite/23_containers/unordered_map/operations/count.cc: New. * testsuite/23_containers/multimap/operations/count.cc: Likewise. * testsuite/23_containers/set/operations/count.cc: Likewise. * testsuite/23_containers/unordered_multimap/operations/count.cc: Likewise. * testsuite/23_containers/unordered_set/operations/count.cc: Likewise. * testsuite/23_containers/multiset/operations/count.cc: Likewise. * testsuite/23_containers/unordered_multiset/operations/count.cc: Likewise. * testsuite/23_containers/map/operations/count.cc: Likewise. 2011-10-28 Richard B. Kreckel * include/std/complex (__complex_acosh): Just use '< _Tp()'. * include/tr1/complex (__complex_acosh): Likewise. 2011-10-27 Richard B. Kreckel Paolo Carlini PR libstdc++/50880 * include/std/complex (__complex_acosh): Fix for __z.real() < 0. * include/tr1/complex (__complex_acosh): Likewise. * testsuite/26_numerics/complex/50880.cc: New. * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise. 2011-10-27 Jonathan Wakely PR libstdc++/50862 * include/std/condition_variable (condition_variable_any::wait): Avoid terminating if relocking user mutex throws during stack-unwinding. * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require. 2011-10-25 Jonathan Wakely * include/std/condition_variable (condition_variable_any): Remove unused native_handle_type typedef. * src/condition_variable.cc (condition_variable): Add missing noexcept specifications. * testsuite/30_threads/condition_variable_any/requirements/ typedefs.cc: Remove. 2011-10-25 Jonathan Wakely PR libstdc++/50862 * include/std/condition_variable (condition_variable_any::wait): Fix deadlock and ensure _Lock::lock() is called on exit. (condition_variable_any::native_handle): Remove, as per LWG 1500. * testsuite/30_threads/condition_variable_any/50862.cc: New. 2011-10-25 Jonathan Wakely PR libstdc++/49894 * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new base classes to manage construction/destruction of native mutexes, using NSDMI when INIT macros are defined. (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from new base classes. * include/std/condition_variable (condition_variable): Use NSDMI when INIT macro is defined. Use noexcept. * src/condition_variable.cc (condition_variable): Explicitly-default constructor/destructor when using NSDMI. Use noexcept. (condition_variable_any): Likewise. 2011-10-24 Jonathan Wakely * testsuite/30_threads/async/49668.cc: Add missing dg-require. * testsuite/30_threads/packaged_task/49668.cc: Likewise. 2011-10-22 Jonathan Wakely PR libstdc++/50834 * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11. 2011-10-22 Jonathan Wakely PR libstdc++/50196 * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS. * configure: Regenerate. * include/std/mutex (timed_mutex, recursive_timed_mutex): Define conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK. * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define. * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define. * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc: Use dg-require-gthreads-timed instead of dg-require-gthreads. * testsuite/30_threads/recursive_timed_mutex/native_handle/ typesizes.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc: Likewise. * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise. * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc: Likewise. * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise. * testsuite/30_threads/unique_lock/cons/5.cc: Likewise. * testsuite/30_threads/unique_lock/cons/6.cc: Likewise. * testsuite/30_threads/unique_lock/locking/3.cc: Likewise. * testsuite/30_threads/unique_lock/locking/4.cc: Likewise. 2011-10-19 Ed Smith-Rowland <3dw4rd@verizon.net> * include/tr2/bool_set (bool_set): New. * include/tr2/bool_set.tcc: New. * include/tr2/dynamic_bitset (dynamic_bitset): New. * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New. * include/Makefile.am: Add files. * include/Makefile.in: Regenerate. 2011-10-19 Benjamin Kosnik * doc/doxygen/user.cfg.in: Add tr2 files. * testsuite/tr2/headers/all.cc: New. * testsuite/tr2/headers/using_namespace_std_tr2.cc: New. * include/tr2/type_traits: Tweak. 2011-10-18 Jason Merrill PR c++/50500 * include/bits/shared_ptr.h: Default copy ctor and assignment. * testsuite/util/testsuite_allocator.h: Define copy assignment. * testsuite/util/testsuite_rvalref.h: Default copy assignment. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags. 2011-10-17 Michael Spertus * include/tr2/type_traits (bases, direct_bases, typelist): New. 2011-10-17 Benjamin Kosnik * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes. * libstdc++-v3/include/Makefile.in: Regenerate. * scripts/create_testsuite_files: Search tr2 directory. * testsuite/libstdc++-dg/conformance.exp: Same. * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New. * testsuite/tr2/bases/requirements/typedefs.cc: New. * testsuite/tr2/bases/value.cc: New. * testsuite/tr2/direct_bases/requirements/ explicit_instantiation.cc: New. * testsuite/tr2/direct_bases/requirements/typedefs.cc: New. * testsuite/tr2/direct_bases/value.cc: New. 2011-10-17 Rainer Orth PR bootstrap/50715 * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate __cxa_get_exception_ptr. 2011-10-14 François Dumont * testsuite/performance/23_containers/insert_erase/41975.cc: New. 2011-10-14 Jonathan Wakely * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar. 2011-10-14 Jonathan Yong * configure.host: Use config/os/mingw32-w64 instead of config/os/mingw32 if vendor key is "w64". * config/os/mingw32-w64: Duplicate from config/os/mingw32. * config/os/mingw32-w64/os_defines.h: Enable _GLIBCXX_FULLY_DYNAMIC_STRING if undefined. * acinclude.m4: Set fully-dynamic-string to 1 when enabled, 0 when disabled or undefined if unset by user. * include/bits/basic_string.h: Check if _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined. include/bits/basic_string.tcc: Likewise. * configure: Regenerated. * config.h.in: Likewise. 2011-10-13 Paolo Carlini PR libstdc++/50714 * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize _M_c_locale_codecvt member. * testsuite/22_locale/codecvt_byname/50714.cc: New. 2011-10-12 Paolo Carlini PR c++/50594 * libsupc++/new (operator new, operator delete): Decorate with __attribute__((__externally_visible__)). * include/bits/c++config: Add _GLIBCXX_THROW. * libsupc++/del_op.cc: Adjust. * libsupc++/del_opv.cc: Likewise. * libsupc++/del_opnt.cc: Likewise. * libsupc++/del_opvnt.cc: Likewise. * libsupc++/new_op.cc: Likewise. * libsupc++/new_opv.cc: Likewise. * libsupc++/new_opnt.cc: Likewise. * libsupc++/new_opvnt.cc: Likewise. * testsuite/18_support/50594.cc: New. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line number. 2011-10-11 Emil Wojak PR c++/50661 * include/bits/stl_algobase.h (equal): Compare arrays of pointers too with memcmp. 2011-10-10 Benjamin Kosnik PR libstdc++/49818 * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols. * testsuite/util/testsuite_abi.cc: Same. * libsupc++/unwind-cxx.h: Move required eh API... * libsupc++/cxxabi.h: ... to here. Add required forward declarations. Use _GLIBCXX_NOTHROW. * libsupc++/pure.cc (__cxa_deleted_virtual): Add. * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW. * libsupc++/eh_catch.cc: Same. * libsupc++/eh_globals.cc: Same. * libsupc++/eh_type.cc: Same. 2011-10-07 Jonathan Wakely * testsuite/util/testsuite_allocator.h (uneq_allocator): Add propagate_on_container_swap typedef for C++0x testing. 2011-10-06 Paolo Carlini * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives, for C++0x testing too. * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise. * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise. * testsuite/24_iterators/istreambuf_iterator/requirements/ base_classes.cc: Adjust for C++0x testing. * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode. * testsuite/ext/codecvt/char-2.cc: Likewise. * testsuite/ext/codecvt/wchar_t.cc: Likewise. 2011-10-05 Paolo Carlini * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode when int_type is unsigned. 2011-10-04 Paolo Carlini PR libstdc++/49561 * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size): Add in C++0x mode. (_List_base<>::_List_impl, _List_base<>::_M_get_node, _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&), list<>::size, list<>::swap, list<>::splice): Use it. (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode. * include/bits/list.tcc (list<>::erase): Likewise. (list<>::merge): Adjust in C++0x mode. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * 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. 2011-10-04 Paolo Carlini * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall warning. 2011-10-04 Jonathan Wakely * 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. 2011-10-03 Jonathan Wakely * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality operator and use. 2011-10-03 Paolo Carlini * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&), insert(const_iterator, value_type&&)): Don't define here... * include/bits/unordered_set.h (__unordered_set<>, __unordered_multiset<>): ... define here instead. 2011-09-29 Jason Merrill * testsuite/util/testsuite_tr1.h (test_property): Avoid ambiguity. 2011-10-01 François Dumont * include/debug/vector (vector<>::erase(iterator, iterator): Check iterators equality using normal iterators. * include/debug/deque (deque<>::erase(iterator, iterator): Likewise. 2011-09-29 Paolo Carlini * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Remove noexcept from declaration too. 2011-09-27 Benjamin Kosnik * doc/html/*: Regenerate. * doc/Makefile.am: Un-nest the ext output directory. * doc/Makefile.in: Regenerate. * spine.xml: Remove authors, add abstract for short contents. Rename to index.html for html output. * manual/spine.xml: Authors here, manual starts with index.html. * api.xml: Update. * faq.xml: Same. 2011-09-27 Marcus Shawcroft * libsupc++/tinfo.cc (type_info::operator==): Test __name instead of name(). 2011-09-26 Paolo Carlini PR libstdc++/50529 * include/bits/vector.tcc (vector<>::erase(iterator, iterator)): Fix to do nothing if the range is empty. * include/bits/stl_bvector.h: Likewise. * include/bits/deque.tcc: Likewise. * include/debug/vector: Adjust. * include/debug/deque: Likewise. * testsuite/23_containers/vector/modifiers/erase/50529.cc: New. * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise. * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust. 2011-09-25 Benjamin Kosnik Jonathan Wakely PR libstdc++/48698 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here. * configure.ac: Move AC_SUBST of libtool_VERSION past call to GLIBCXX_ENABLE_SYMVERS. * configure: Regenerate. * include/bits/c++config: Use __7 as versioned namespace name. * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as per above. * include/c_global/cwchar: Adjust nested namespaces. * testsuite/20_util/bind/48698.cc: Add test case. * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number. 2011-09-25 Paolo Carlini Revert (no longer necessary post r179130): 2010-04-27 Fabien Chêne * testsuite/util/testsuite_error.h: Add empty default constructor to __gnu_test::test_category and __gnu_test::test_derived_category. * src/future.cc: Add empty default constructor to future_error_category. * src/system_error.cc: Add default ctor to generic_error_category and system_error_category. 2011-09-24 John Salmon PR libstdc++/50510 * include/bits/random.tcc (seed_seq::generate): Fix computation. 2011-09-24 John Salmon PR libstdc++/50509 * include/bits/random.tcc (seed_seq::generate): Fix computation. 2011-09-21 Benjamin Kosnik * src/limits.cc: Replace everywhere __int128_t -> __int128, and __uint128_t -> unsigned __int128. * include/std/type_traits: Likewise. * include/std/limits: Likewise. * testsuite/18_support/numeric_limits/dr559.cc: Likewise. * testsuite/18_support/numeric_limits/lowest.cc: Likewise. * testsuite/18_support/numeric_limits/40856.cc: Likewise. * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise. * testsuite/util/testsuite_common_types.h: Likewise. * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/is_floating_point/value.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/is_signed/value.cc: Likewise. * testsuite/20_util/is_unsigned/value.cc: Likewise. * testsuite/20_util/is_integral/value.cc: Likewise. * config/abi/pre/gnu.ver: Likewise. * acinclude.m4: Likewise. * configure: Regenerate. * config.h.in: Likewise. 2011-09-19 Paolo Carlini 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. 2011-09-17 Paolo Carlini PR libstdc++/50441 * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add. * configure.ac: Call it. * include/std/type_traits (__is_integral_helper<__int128_t>, __is_integral_helper<__uint128_t>, __is_floating_point_helper<__float128>, __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add. * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend. * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/is_signed/value.cc: Likewise. * testsuite/20_util/is_unsigned/value.cc: Likewise. * testsuite/20_util/is_integral/value.cc: Likewise. * testsuite/20_util/is_floating_point/value.cc: New. * testsuite/20_util/is_floating_point/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_floating_point/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * configure: Regenerate. * config.h.in: Likewise. 2011-09-17 François Dumont * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const _RehashPolicy&)): Commit the modification of the policy only if no exception occured. * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc: New. 2011-09-16 Paolo Carlini * testsuite/23_containers/array/comparison_operators/ less_or_equal.cc: New. * testsuite/23_containers/array/comparison_operators/ greater_or_equal.cc: Likewise. * testsuite/23_containers/array/comparison_operators/less.cc: Likewise. * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise. * testsuite/23_containers/array/comparison_operators/not_equal.cc: Likewise. * testsuite/23_containers/array/comparison_operators/greater.cc: Likewise. * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise. * testsuite/23_containers/array/capacity/empty.cc: Likewise. * testsuite/23_containers/array/capacity/max_size.cc: Likewise. * testsuite/23_containers/array/capacity/size.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_size.cc: Likewise. * testsuite/23_containers/array/element_access/at_out_of_range.cc: Likewise. * testsuite/23_containers/array/element_access/back.cc: Likewise. * testsuite/23_containers/array/element_access/front.cc: Likewise. * testsuite/23_containers/array/element_access/data.cc: Likewise. * testsuite/23_containers/array/cons/aggregate_initialization.cc: Likewise. * testsuite/23_containers/array/requirements/zero_sized_arrays.cc: Likewise. * testsuite/23_containers/array/requirements/contiguous.cc: Likewise. * testsuite/23_containers/array/requirements/member_swap.cc: Likewise. * testsuite/23_containers/array/specialized_algorithms/swap.cc: Likewise. * testsuite/23_containers/array/constexpr_get.cc: Move... * testsuite/23_containers/array/tuple_interface/constexpr_get.cc: ... here. * testsuite/23_containers/array/requirements/get.cc: Move... * testsuite/23_containers/array/tuple_interface/get: ... here. * testsuite/23_containers/array/at_neg.cc: Move... * testsuite/23_containers/array/element_access: ... here. * testsuite/23_containers/array/requirements/constexpr_functions.cc: Move... * testsuite/23_containers/array/capacity: ... here. * testsuite/23_containers/array/requirements/ constexpr_element_access.cc: Move... * testsuite/23_containers/array/element_access: ... here. * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings. * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise. * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise. * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise. * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise. * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning. * testsuite/20_util/forward/1_neg.cc: Likewise. 2011-09-15 Paolo Carlini * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr. (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise. * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable make_tuple test. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line number. 2011-09-14 François Dumont Paolo Carlini * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore hash policy _M_prev_resize on exception. (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize before using it and use latter method to have it restored on exception. (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise. (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise. (_Hashtable<>::rehash): Likewise. * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New. * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc: Likewise. 2011-09-13 Paul Brook * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation. * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base. * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove __ARM_EABI_UNWINDER__ check. (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING. (get_ttype_entry): Use generic implementation on ARM EABI. (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and UNWIND_STACK_REG. (PERSONALITY_FUNCTION): Set ttype_base. 2011-09-12 Daniel Krugler Paolo Carlini * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail, _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static constexpr functions; adjust everywhere. (__get_helper, get): Declare constexpr all three overloads. (tuple_cat): Declare constexpr; use late return type to improve error messages. * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get, __pair_get<>::__const_get, get): Declare all constexpr. * include/std/array (get): Likewise. * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable tuple_cat test. * testsuite/23_containers/array/constexpr_get.cc: New. * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise. * testsuite/20_util/pair/constexpr_get.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error line number. 2011-09-12 Jason Merrill * testsuite/20_util/is_constructible/value-2.cc: Adjust expected values. 2011-09-11 Daniel Krugler PR libstdc++/50159 * include/std/tuple (tuple_cat): Reimplement according to the resolution of LWG 1385. * include/std/type_traits: Define __and_ and __or_ for zero arguments too; minor tweaks. * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New. * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable for now tuple_cat test. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * doc/xml/manual/status_cxx200x.xml: Update. 2011-09-09 Paolo Carlini * include/std/tuple: Use everywhere std::size_t... instead of int... * include/std/functional: Likewise. * include/std/scoped_allocator: Likewise. * include/bits/stl_pair.h: Likewise. 2011-09-09 Paolo Carlini PR libstdc++/50336 * include/bits/streambuf_iterator.h (class istreambuf_iterator): Implement LWG 445 in C++0x mode. * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc: New. 2011-09-08 Dodji Seketeli PR c++/33255 - Support -Wunused-local-typedefs warning * include/ext/bitmap_allocator.h (__detail::__mini_vector::__lower_bound): Remove unused typedef. * src/istream.cc (std::operator>>(basic_istream& __in, basic_string& __str)): Likewise. (std::getline): Likewise. * src/valarray.cc (__valarray_product): Likewise. 2011-09-07 François Dumont * testsuite/23_containers/array/at.cc: Revert to... * testsuite/23_containers/array/at_neg.cc: ...this. 2011-09-07 Jason Merrill * testsuite/20_util/bind/ref_neg.cc: Adjust errors. * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors. 2011-09-06 Benjamin Kosnik * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr. (tuple(tuple&&)): Same. (tuple(const tuple<_UElements...>& __in)): Same. (tuple(tuple<_UElements...>&& __in)): Same. (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)): Same. (get): Same. * include/std/array: Consolidate array::data usage. * testsuite/23_containers/array/requirements/constexpr_functions.cc: Remove extra include. * testsuite/20_util/tuple/creation_functions/constexpr.cc: New. * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests. * testsuite/20_util/tuple/cons/constexpr-3.cc: Same. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers. 2011-09-06 François Dumont Paolo Carlini * include/bits/hashtable_policy.h (_Prime_rehash_policy:: _M_next_bkt): Cast _M_max_load_factor to long double. (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt. (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all float quantities to long double. 2011-09-06 Paolo Carlini PR libstdc++/50257 * include/bits/hashtable_policy.h (_Prime_rehash_policy:: _M_next_bkt): Optimize for small argument. 2011-09-02 François Dumont * testsuite/util/testsuite_allocator.h (tracker_allocator_counter:: allocate): Update allocation count only if allocation succeeded. 2011-09-02 Paolo Carlini * include/std/bitset: Trivial formatting fixes. 2011-09-02 Paolo Carlini Marc Glisse * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove. (_Base_bitset<>::_M_are_all): Add. (bitset<>::all): Use the latter, improve implementation. 2011-09-02 Paolo Carlini Marc Glisse PR libstdc++/50268 * include/std/bitset (struct _Sanitize_val): Add. (bitset<>::bitset(unsigned long long)): Fix. * testsuite/23_containers/bitset/cons/50268.cc: New. 2011-09-01 Paolo Carlini * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Remove noexcept, the move constructor allocates memory; rearrange the code in the body to consistently update __ht._M_rehash_policy before using _M_next_bkt on it. * include/debug/unordered_map: Adjust. * include/debug/unordered_set: Likewise. * include/profile/unordered_map: Likewise. * include/profile/unordered_set: Likewise. * testsuite/23_containers/unordered_map/cons/ noexcept_move_construct.cc: Remove. * testsuite/23_containers/unordered_set/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_multimap/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_multiset/cons/ noexcept_move_construct.cc: Likewise. 2011-08-31 Paolo Carlini * include/std/chrono (operator*(const _Rep1&, const duration<>&)): Fix order of template parameters per LWG 2004. 2011-08-30 Paolo Carlini * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061. * testsuite/24_iterators/move_iterator/dr2061.cc: New. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line numbers. 2011-08-30 Paolo Carlini * config/os/mingw32/error_constants.h: Fix commas. 2011-08-29 Benjamin Kosnik * testsuite/20_util/duration/arithmetic/constexpr.cc: Add. 2011-08-29 Kai Tietz * configure: Regenerated. * config.h.in: Regenerated. * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR) Add checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and EWOULDBLOCK. * config/os/mingw32/error_constants.h (errc): Add enumerator values no_child_process, no_space_on_device, not_supported, operation_not_permitted, operation_would_block, timed_out, and value_too_large, 2011-08-29 Paolo Carlini PR libstdc++/50118 * include/bits/stl_list.h (_List_base<>:: _List_base(const allocator_type&)): Remove. (_List_base<>::_List_base(const _Node_alloc_type&)): Add. (list<>:list(const allocator_type&), list(size_type, const value_type&, const allocator_type&), list(initializer_list<, const allocator_type&), list(_InputIterator, _InputIterator, const allocator_type&), insert(iterator, size_type, const value_type&), insert(iterator, _InputIterator, _InputIterator)): Adjust. * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&)): Fix. * include/bits/stl_map.h (map<>::map(const _Compare&, const allocator_type&), map(initializer_list<>, const _Compare&, const allocator_type&), map(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Adjust. * include/bits/stl_set.h (set<>::set(const _Compare&, const allocator_type&), set(initializer_list<>, const _Compare&, const allocator_type&), set(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Likewise. * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&, const allocator_type&), multimap(initializer_list<>, const _Compare&, const allocator_type&), multimap(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Likewise. * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&, const allocator_type&), multiset(initializer_list<>, const _Compare&, const allocator_type&), multiset(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Likewise. * include/bits/forward_list.h (_Fwd_list_base<>:: _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&, const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)): Remove. (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&), _Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Add. (forward_list<>::forward_list(const _Alloc&), forward_list(const forward_list&, const _Alloc&), forward_list(forward_list&&, const _Alloc&), forward_list(size_type, const _Tp&, const _Alloc&), forward_list(_InputIterator, _InputIterator, const _Alloc&), forward_list(std::initializer_list<>, const _Alloc&), get_allocator): Adjust. * include/bits/forward_list.tcc: Adjust. * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add. * testsuite/23_containers/unordered_map/requirements/ explicit_instantiation/5.cc: New. * testsuite/23_containers/multimap/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/multimap/requirements/ explicit_instantiation/5_c++0x.cc: Likewise. * testsuite/23_containers/set/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/set/requirements/explicit_instantiation/ 5_c++0x.cc: Likewise. * testsuite/23_containers/unordered_multimap/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/forward_list/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/unordered_set/requirements/ explicit_instantiation/5.cc: Likewise. testsuite/23_containers/multiset/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/multiset/requirements/ explicit_instantiation/5_c++0x.cc: Likewise. * testsuite/23_containers/list/requirements/explicit_instantiation/ 5_c++0x.cc: Likewise. * testsuite/23_containers/list/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/unordered_multiset/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/map/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/map/requirements/explicit_instantiation/ 5_c++0x.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/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. 2011-08-29 Rainer Orth * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO) (GLIBCXX_CHECK_STDLIB_PROTO): New tests. * configure.ac (GLIBCXX_CHECK_MATH_PROTO) (GLIBCXX_CHECK_STDLIB_PROTO): Call them. * configure: Regenerate. * config.h.in: Regenerate. * config/os/solaris/solaris2.8/os_defines.h (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define. * config/os/solaris/solaris2.9: Remove. * configure.host (solaris2.8): Merge with ... (solaris2.9, solaris2.1[0-9]): ... this. Always use os/solaris/solaris2.8. 2011-08-28 Paolo Carlini * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove workaround for c++/49045. * include/bits/algorithmfwd.h: Likewise. 2011-08-25 Tom Tromey * testsuite/libstdc++-prettyprinters/simple.cc: New file. * testsuite/lib/gdb-test.exp: New file. * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New file. 2011-08-18 Marc Glisse * include/tr1/cmath: Extend/update comment. 2011-08-18 Paolo Carlini PR libstdc++/50119 * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size, _OutputIterator, input_iterator_tag)): Fix. * testsuite/25_algorithms/copy_n/50119.cc: New. 2011-08-18 Marc Glisse Rainer Orth PR libstdc++/1773 * config/os/solaris2.7: Rename to config/os/solaris2.9. * config/os/solaris/solaris2.9/os_defines.h (__CORRECT_ISO_CPP_MATH_H_PROTO1) (__CORRECT_ISO_CPP_STDLIB_H_PROTO) (__CORRECT_ISO_CPP_STRING_H_PROTO) (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define. * config/os/solaris2.8/ctype_base.h, config/os/solaris2.8/ctype_configure_char.cc, config/solaris2.8/ctype_inline.h, config/os/solaris2.8/os_defines.h: New files. * configure.host (solaris2.[89], solaris2.1[0-9]): Split into ... (solaris2.8): ... this. Use os/solaris/solaris2.8. (solaris2.9, solaris2.1[0-9]): ... and this. Use os/solaris/solaris2.9. * include/c_global/cmath (double abs(double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1 && !__CORRECT_ISO_CPP_MATH_H_PROTO2. (float abs(float), long double abs(long double): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1. (float acos(float), long double acos(long double)): Likewise. (float asin(float), long double asin(long double)): Likewise. (float atan(float), long double atan(long double)): Likewise. (float atan2(float, float), long double atan2(long double, long double)): Likewise. (float ceil(float), long double ceil(long double)): Likewise. (float cos(float), long double cos(long double)): Likewise. (float cosh(float), long double cosh(long double)): Likewise. (float exp(float), long double exp(long double)): Likewise. (float fabs(float), long double fabs(long double)): Likewise. (float floor(float), long double floor(long double)): Likewise. (float fmod(float, float), long double fmod(long double, long double)): Likewise. (float frexp(float, int*), long double frexp(long double, int*)): Likewise. (float ldexp(float, int), long double ldexp(long double, int)): Likewise. (float log(float), long double log(long double)): Likewise. (float log10(float), long double log10(long double)): Likewise. (float modf(float, float*), long double modf(long double, long double*))): Likewise. (float pow(float, float), long double pow(long double, long double)): Likewise. (float sin(float), long double sin(long double)): Likewise. (float sinh(float), long double sinh(long double)): Likewise. (float sqrt(float), long double sqrt(long double)): Likewise. (float tan(float), long double tan(long double)): Likewise. (float tanh(float), long double tanh(long double)): Likewise. * include/c_global/cstdlib (long abs(long), ldiv_t div(long, long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO. * include/tr1/cmath (float fabs(float), long double fabs(long double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1. 2011-08-14 Benjamin Kosnik * doc/xml/images/*: Image and image filename changes. 2011-08-14 Benjamin Kosnik * testsuite/data/make_graph_test_infos.xml: Edit. * testsuite/data/make_graph_htmls.xml: Remove * scripts/make_graph.py: Edit, fix. * scripts/make_graphs.py: Remove. * doc/Makefile.am (doc-svg-performance): New. (doc-html-performance): Remove. * doc/Makefile.in: Regenerate. * doc/xml/manual/test_policy_data_structures.xml: Markup changes. * doc/xml/manual/policy_data_structures.xml: Same. * doc/xml/manual/locale.xml: Same. Testsuite renames. * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc: Rename. * performance/ext/pb_ds/random_int_find_timing.cc: Same. * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp * performance/ext/pb_ds/multimap_text_find_timing.hpp * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same. * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same. * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same. * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same. * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same. * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same. * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same. * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same. * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same. * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same. * performance/ext/pb_ds/text_find_timing.cc: Same. * performance/ext/pb_ds/tree_text_insert_timing.cc: Same. * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same. * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same. * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same. * performance/ext/pb_ds/tree_split_join_timing.cc: Same. * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same. * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same. * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same. * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc: Same. * performance/ext/pb_ds/multimap_text_insert_timing.hpp * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same. * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same. * performance/ext/pb_ds/all_int_find.cc: To these new files... * performance/ext/pb_ds/all_int_subscript_find.cc: ...this. * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this. * performance/ext/pb_ds/all_text_find.cc: ...this. * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this. * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this. * performance/ext/pb_ds/multimap_text_find.hpp * performance/ext/pb_ds/multimap_text_find_large.cc: ...this. * performance/ext/pb_ds/multimap_text_find_small.cc: ...this. * performance/ext/pb_ds/multimap_text_insert.hpp * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this. * performance/ext/pb_ds/multimap_text_insert_mem.hpp * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this. * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this. * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this. * performance/ext/pb_ds/priority_queue_int_push.cc: ...this. * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this. * performance/ext/pb_ds/priority_queue_text_join.cc: ...this. * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this. * performance/ext/pb_ds/priority_queue_text_modify.hpp * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this. * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this. * performance/ext/pb_ds/priority_queue_text_push.cc: ...this. * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this. * performance/ext/pb_ds/tree_order_statistics.cc: ...this. * performance/ext/pb_ds/tree_split_join.cc: ...this. * performance/ext/pb_ds/tree_text_insert.cc: ...this. * performance/ext/pb_ds/tree_text_lor_find.cc: ...this. * doc/xml/images/*: Image and image filename changes. 2011-08-12 Paolo Carlini * include/c_global/cmath (fmod(_Tp, _Up)): Add. * include/c_std/cmath: Likewise. 2011-08-11 Paolo Carlini * include/std/future: constexpr functions are implicitly inline. * include/std/chrono: Likewise. * include/std/complex: Likewise. * include/bits/move.h: Likewise. * include/bits/stl_pair.h: Likewise. 2011-08-07 Jonathan Wakely * include/bits/alloc_traits.h: Fix doxygen @headername. 2011-08-06 Benjamin Kosnik * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO. 2011-08-06 Benjamin Kosnik * 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. 2011-08-05 Rainer Orth * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES to $(toplevel_srcdir)/libgcc. * configure: Regenerate. 2011-08-04 Benjamin Kosnik * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG imagedata. * doc/xml/manual/test_policy_data_structures.xml: Same. * doc/xml/manual/policy_data_structures.xml: Same. * doc/Makefile.am (stamp-html-docbook-images) (stamp-html-docbook-lwg, stamp-html-docbook-data): New. (xml_extra): Add lwg html file dependencies. (xml_images): Add image html file dependencies. * doc/Makefile.in: Regenerate. (stamp-html): Change to stamp-html-docbook-data. (stamp-html-copy): Remove. 2011-08-04 Paolo Carlini * src/atomic.cc: Use noexcept. * include/std/atomic: Likewise. * include/bits/atomic_0.h: Likewise. * include/bits/atomic_2.h: Likewise. * include/bits/atomic_base.h: Likewise. 2011-08-03 Benjamin Kosnik * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include unistd.h for unlink. * testsuite/performance/27_io/ofstream_insert_int.cc: Same. * testsuite/performance/27_io/ifstream_extract_int.cc: Same. * testsuite/performance/27_io/ifstream_getline-2.cc: Same. * testsuite/performance/27_io/fstream_seek_write.cc: Same. * testsuite/performance/27_io/ifstream_extract_chars.cc: Same. * testsuite/performance/27_io/ofstream_insert_float.cc: Same. * testsuite/performance/27_io/ifstream_extract_float.cc: Same. * testsuite/performance/27_io/filebuf_sputc.cc: Same. 2011-08-03 Benjamin Kosnik * include/std/tuple: Mark more constructors constexpr. * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as: * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this. * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers. 2011-08-03 Benjamin Kosnik François Dumont * testsuite/23_containers/array/at_neg.cc: Move... * testsuite/23_containers/array/at.cc: ...here. Remove -fno-exceptions, call const at member function. 2011-08-01 H.J. Lu * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated. 2011-08-01 Paolo Carlini PR c++/49813 * include/c_global/cmath (isinf): Remove workaround. 2011-07-31 Paolo Carlini PR libstdc++/49925 * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared with std::. * include/bits/shared_ptr_base.h (__make_shared): Likewise. 2011-07-29 Benjamin Kosnik * doc/xml/manual/build_hacking.xml: Markup imagedata changes. * doc/xml/manual/policy_data_structures.xml: Same. * doc/xml/class.txml: Remove biblioid. * doc/xml/manual/allocator.xml: Same. * doc/xml/manual/ctype.xml: Same. * doc/xml/manual/codecvt.xml: Same. * doc/xml/manual/backwards_compatibility.xml: Same. * doc/xml/manual/abi.xml: Same. * doc/xml/manual/shared_ptr.xml: Same. * doc/xml/manual/using_exceptions.xml: Same. * doc/xml/manual/messages.xml: Same. 2011-07-29 Benjamin Kosnik Docbook conversion of existing ext/pb_ds documentation. * doc/Makefile.am (xml_sources_manual): Add policy_data_structures.xml and test_policy_data_structures.xml. (stamp-html-copy): Remove special-case for ext/pb_ds directory. (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use. * doc/Makefile.in: Regenerate. * doc/xml/manual/policy_data_structures.xml: New, adapted from previous html-only instance in doc/html/ext/pb_ds. * doc/xml/manual/test_policy_data_structures.xml: New, same as above. * doc/xml/spine.xml: Update copyright. * doc/xml/manual/spine.xml: Same. * doc/xml/manual/extensions.xml: Adjust set, chapter, sections. * doc/xml/manual/bitmap_allocator.xml: Same. * doc/xml/manual/mt_allocator.xml: Same. Populate image directory. * doc/xml/images/(pbds_balls_and_bins.png, pbds_binary_priority_queue_random_int_push_timing_test_local.pdf, pbds_binary_priority_queue_random_int_push_timing_test_local.png, pbds_binary_priority_queue_random_int_push_timing_test_local.svg, pbds_cc_hash_random_int_find_timing_test_local.pdf, pbds_cc_hash_random_int_find_timing_test_local.png, pbds_cc_hash_random_int_find_timing_test_local.svg, pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf, pbds_cc_hash_random_int_subscript_timing_test_find_local.png, pbds_cc_hash_random_int_subscript_timing_test_find_local.svg, pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf, pbds_cc_hash_random_int_subscript_timing_test_insert_local.png, pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg, pbds_container_tag_hierarchy.pdf, pbds_container_tag_hierarchy.png, pbds_container_tag_hierarchy.svg, pbds_different_underlying_dss_1.png, pbds_different_underlying_dss_2.png, pbds_embedded_lists_1.png, pbds_embedded_lists_2.png, pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf, pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg, pbds_gp_hash_random_int_find_timing_test_local.pdf, pbds_gp_hash_random_int_find_timing_test_local.png, pbds_gp_hash_random_int_find_timing_test_local.svg, pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf, pbds_gp_hash_random_int_subscript_timing_test_find_local.png, pbds_gp_hash_random_int_subscript_timing_test_find_local.svg, pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf, pbds_gp_hash_random_int_subscript_timing_test_insert_local.png, pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg, pbds_hash_policy_cd.png, pbds_hash_random_int_erase_mem_usage_test_local.pdf, pbds_hash_random_int_erase_mem_usage_test_local.png, pbds_hash_random_int_erase_mem_usage_test_local.svg, pbds_hash_ranged_hash_range_hashing_fns.png, pbds_hash_range_hashing_seq_diagram2.png, pbds_hash_range_hashing_seq_diagram.png, pbds_hash_zlob_random_int_find_timing_test_local.pdf, pbds_hash_zlob_random_int_find_timing_test_local.png, pbds_hash_zlob_random_int_find_timing_test_local.svg, pbds_insert_resize_sequence_diagram1.png, pbds_insert_resize_sequence_diagram2.png, pbds_insert_resize_sequence_diagram3.png, pbds_invalidation_guarantee_erase.png, pbds_invalidation_tag_hierarchy.pdf, pbds_invalidation_tag_hierarchy.png, pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png, pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf, pbds_multimap_text_find_timing_test_large_s2p_hash_local.png, pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg, pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf, pbds_multimap_text_find_timing_test_large_s2p_tree_local.png, pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg, pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf, pbds_multimap_text_find_timing_test_small_s2p_hash_local.png, pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg, pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf, pbds_multimap_text_find_timing_test_small_s2p_tree_local.png, pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg, pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf, pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png, pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg, pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf, pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png, pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg, pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf, pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png, pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg, pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf, pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png, pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg, pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf, pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png, pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg, pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf, pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png, pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg, pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf, pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png, pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg, pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf, pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png, pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg, pbds_node_invariants.png, pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf, pbds_pairing_priority_queue_text_push_pop_timing_test_local.png, pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg, pbds_pairing_priority_queue_text_push_timing_test_local.pdf, pbds_pairing_priority_queue_text_push_timing_test_local.png, pbds_pairing_priority_queue_text_push_timing_test_local.svg, pbds_pat_trie.png, pbds_point_iterator_hierarchy.png, pbds_point_iterators_range_ops_1.png, pbds_point_iterators_range_ops_2.png, pbds_priority_queue_different_underlying_dss.png, pbds_priority_queue_random_int_push_pop_timing_test_local.pdf, pbds_priority_queue_random_int_push_pop_timing_test_local.png, pbds_priority_queue_random_int_push_pop_timing_test_local.svg, pbds_priority_queue_random_int_push_timing_test_local.pdf, pbds_priority_queue_random_int_push_timing_test_local.png, pbds_priority_queue_random_int_push_timing_test_local.svg, pbds_priority_queue_tag_hierarchy.pdf, pbds_priority_queue_tag_hierarchy.png, pbds_priority_queue_tag_hierarchy.svg, pbds_priority_queue_text_join_timing_test_local.pdf, pbds_priority_queue_text_join_timing_test_local.png, pbds_priority_queue_text_join_timing_test_local.svg, pbds_priority_queue_text_modify_down_timing_test_local.pdf, pbds_priority_queue_text_modify_down_timing_test_local.png, pbds_priority_queue_text_modify_down_timing_test_local.svg, pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf, pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png, pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg, pbds_priority_queue_text_modify_up_timing_test_local.pdf, pbds_priority_queue_text_modify_up_timing_test_local.png, pbds_priority_queue_text_modify_up_timing_test_local.svg, pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf, pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png, pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg, pbds_priority_queue_text_pop_mem_usage_test_local.pdf, pbds_priority_queue_text_pop_mem_usage_test_local.png, pbds_priority_queue_text_pop_mem_usage_test_local.svg, pbds_priority_queue_text_push_pop_timing_test_local.pdf, pbds_priority_queue_text_push_pop_timing_test_local.png, pbds_priority_queue_text_push_pop_timing_test_local.svg, pbds_priority_queue_text_push_timing_test_local.pdf, pbds_priority_queue_text_push_timing_test_local.png, pbds_priority_queue_text_push_timing_test_local.svg, pbds_rationale_null_node_updator.png, pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png, pbds_simple_list.png, pbds_text_find_timing_test_hash_local.pdf, pbds_text_find_timing_test_hash_local.png, pbds_text_find_timing_test_hash_local.svg, pbds_text_find_timing_test_tree_like_local.pdf, pbds_text_find_timing_test_tree_like_local.png, pbds_text_find_timing_test_tree_like_local.svg, pbds_tree_node_invalidations.png, pbds_tree_node_invariants.png, pbds_tree_node_updator_policy_cd.png, pbds_tree_order_statistics_timing_test_local.pdf, pbds_tree_order_statistics_timing_test_local.png, pbds_tree_order_statistics_timing_test_local.svg, pbds_tree_split_join_timing_test_local.pdf, pbds_tree_split_join_timing_test_local.png, pbds_tree_split_join_timing_test_local.svg, pbds_tree_text_insert_timing_test_node_tree_local.pdf, pbds_tree_text_insert_timing_test_node_tree_local.png, pbds_tree_text_insert_timing_test_node_tree_local.svg, pbds_tree_text_insert_timing_test_pat_trie_local.pdf, pbds_tree_text_insert_timing_test_pat_trie_local.png, pbds_tree_text_insert_timing_test_pat_trie_local.svg, pbds_tree_text_insert_timing_test_vector_tree_local.pdf, pbds_tree_text_insert_timing_test_vector_tree_local.png, pbds_tree_text_insert_timing_test_vector_tree_local.svg, pbds_tree_text_lor_find_timing_test_local.pdf, pbds_tree_text_lor_find_timing_test_local.png, pbds_tree_text_lor_find_timing_test_local.svg, pbds_trie_node_updator_policy_cd.png, pbds_update_seq_diagram.png): Add. * doc/html/ext/pb_ds: Remove. * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png, assoc_container_tag_cd.svg, assoc_container_traits.html, assoc_design.html, assoc_examples.html, associative_container_tag.html, assoc_performance_tests.html, assoc_regression_tests.html, assoc_tests.html, balls_and_bins.png, basic_hash_table.html, basic_hash_tag.html, basic_invalidation_guarantee.html, basic_tree_assoc_container_const_node_iterator.html, basic_tree.html, basic_tree_tag.html, binary_heap_tag.html, binary_priority_queue_random_int_push_timing_test_gcc.png, binary_priority_queue_random_int_push_timing_test_local.png, binary_priority_queue_random_int_push_timing_test_msvc.png, binomial_heap_tag.html, ccgp_hash_random_int_subscript_timing_test_insert_gcc.png, ccgp_hash_random_int_subscript_timing_test_insert_local.png, ccgp_hash_random_int_subscript_timing_test_insert_msvc.png, cc_hash_max_collision_check_resize_trigger.html, cc_hash_random_int_find_timing_test_gcc.png, cc_hash_random_int_find_timing_test_local.png, cc_hash_random_int_find_timing_test_msvc.png, cc_hash_random_int_subscript_timing_test_find_gcc.png, cc_hash_random_int_subscript_timing_test_find_local.png, cc_hash_random_int_subscript_timing_test_find_msvc.png, cc_hash_random_int_subscript_timing_test_insert_gcc.png, cc_hash_random_int_subscript_timing_test_insert_local.png, cc_hash_random_int_subscript_timing_test_insert_msvc.png, cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif concepts.html, contact.html, container_base.html, container_cd.png, container_cd.svg, container_tag.html, counter_lu_policy.html, design.html, different_underlying_dss.png, direct_mask_range_hashing.html, direct_mod_range_hashing.html, disclaimer.html, ds_gen.html, embedded_lists_1.png, embedded_lists_2.png, embedded_lists_3.png, examples.html, exceptions.html, gp_hash_random_int_find_timing_test_gcc.png, gp_hash_random_int_find_timing_test_local.png, gp_hash_random_int_find_timing_test_msvc.png, gp_hash_random_int_subscript_timing_test_find_gcc.png, gp_hash_random_int_subscript_timing_test_find_local.png, gp_hash_random_int_subscript_timing_test_find_msvc.png, gp_hash_random_int_subscript_timing_test_insert_gcc.png, gp_hash_random_int_subscript_timing_test_insert_local.png, gp_hash_random_int_subscript_timing_test_insert_msvc.png, gp_hash_table.html, gp_hash_tag.html, hash_based_containers.html, hash_exponential_size_policy.html, hash_load_check_resize_trigger.html, hash_policy_cd.png, hash_prime_size_policy.html, hash_random_int_erase_mem_usage_test_gcc.png, hash_random_int_erase_mem_usage_test.html, hash_random_int_erase_mem_usage_test_local.png, hash_random_int_erase_mem_usage_test_msvc.png, hash_random_int_find_find_timing_test.html, hash_random_int_subscript_find_timing_test.html, hash_random_int_subscript_insert_timing_test.html, hash_ranged_hash_range_hashing_fns.png, hash_range_hashing_seq_diagram2.png, hash_range_hashing_seq_diagram.png, hash_standard_resize_policy.html, hash_text_find_find_timing_test.html, hash_zlob_random_int_find_find_timing_test.html, hash_zlob_random_int_find_timing_test_gcc.png, hash_zlob_random_int_find_timing_test_local.png, hash_zlob_random_int_find_timing_test_msvc.png, index.html, insert_error.html, insert_resize_sequence_diagram1.png, insert_resize_sequence_diagram2.png, insert_resize_sequence_diagram3.png, interface.html, introduction.html, invalidation_guarantee_cd.png, invalidation_guarantee_erase.png, join_error.html, linear_probe_fn.html, list_update.html, list_update_tag.html, lu_based_containers.html, lu.png, misc.html, motivation.html, move_to_front_lu_policy.html, multimap_text_find_timing_test_large.html, multimap_text_find_timing_test_large_s2p_hash_gcc.png, multimap_text_find_timing_test_large_s2p_hash_local.png, multimap_text_find_timing_test_large_s2p_hash_msvc.png, multimap_text_find_timing_test_large_s2p_tree_gcc.png, multimap_text_find_timing_test_large_s2p_tree_local.png, multimap_text_find_timing_test_large_s2p_tree_msvc.png, multimap_text_find_timing_test_small.html, multimap_text_find_timing_test_small_s2p_hash_gcc.png, multimap_text_find_timing_test_small_s2p_hash_local.png, multimap_text_find_timing_test_small_s2p_hash_msvc.png, multimap_text_find_timing_test_small_s2p_tree_gcc.png, multimap_text_find_timing_test_small_s2p_tree_local.png, multimap_text_find_timing_test_small_s2p_tree_msvc.png, multimap_text_insert_mem_usage_test_large.html, multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png, multimap_text_insert_mem_usage_test_large_s2p_hash_local.png, multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png, multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png, multimap_text_insert_mem_usage_test_large_s2p_tree_local.png, multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png, multimap_text_insert_mem_usage_test_small.html, multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png, multimap_text_insert_mem_usage_test_small_s2p_hash_local.png, multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png, multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png, multimap_text_insert_mem_usage_test_small_s2p_tree_local.png, multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png, multimap_text_insert_timing_test_large.html, multimap_text_insert_timing_test_large_s2p_hash_gcc.png, multimap_text_insert_timing_test_large_s2p_hash_local.png, multimap_text_insert_timing_test_large_s2p_hash_msvc.png, multimap_text_insert_timing_test_large_s2p_tree_gcc.png, multimap_text_insert_timing_test_large_s2p_tree_local.png, multimap_text_insert_timing_test_large_s2p_tree_msvc.png, multimap_text_insert_timing_test_small.html, multimap_text_insert_timing_test_small_s2p_hash_gcc.png, multimap_text_insert_timing_test_small_s2p_hash_local.png, multimap_text_insert_timing_test_small_s2p_hash_msvc.png, multimap_text_insert_timing_test_small_s2p_tree_gcc.png, multimap_text_insert_timing_test_small_s2p_tree_local.png, multimap_text_insert_timing_test_small_s2p_tree_msvc.png, node_invariant_invalidations.png, node_invariants.png, null_hash_fn.html, null_lu_metadata.html, null_mapped_type.html, null_probe_fn.html, null_tree_node_update.html, null_trie_node_update.html, ov_tree_tag.html, pairing_heap_tag.html, pairing_priority_queue_text_push_pop_timing_test_gcc.png, pairing_priority_queue_text_push_pop_timing_test_local.png, pairing_priority_queue_text_push_pop_timing_test_msvc.png, pairing_priority_queue_text_push_timing_test_gcc.png, pairing_priority_queue_text_push_timing_test_local.png, pairing_priority_queue_text_push_timing_test_msvc.png, pat_trie.png, pat_trie_tag.html, point_invalidation_guarantee.html, point_iterators_cd.png, point_iterators_range_ops_1.png, point_iterators_range_ops_2.png, pq_container_traits.html, pq_design.html, pq_different_underlying_dss.png, pq_examples.html, pq_performance_tests.html, pq_regression_tests.html, pq_tests.html, prerequisites.html, priority_queue.html, priority_queue_random_int_push_pop_timing_test_gcc.png, priority_queue_random_int_push_pop_timing_test.html, priority_queue_random_int_push_pop_timing_test_local.png, priority_queue_random_int_push_pop_timing_test_msvc.png, priority_queue_random_int_push_timing_test_gcc.png, priority_queue_random_int_push_timing_test.html, priority_queue_random_int_push_timing_test_local.png, priority_queue_random_int_push_timing_test_msvc.png, priority_queue_tag_cd.png, priority_queue_tag_cd.svg, priority_queue_tag.html, priority_queue_text_join_timing_test_gcc.png, priority_queue_text_join_timing_test.html, priority_queue_text_join_timing_test_local.png, priority_queue_text_join_timing_test_msvc.png, priority_queue_text_modify_down_timing_test_gcc.png, priority_queue_text_modify_down_timing_test.html, priority_queue_text_modify_down_timing_test_local.png, priority_queue_text_modify_down_timing_test_msvc.png, priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png, priority_queue_text_modify_down_timing_test_pairing_thin_local.png, priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png, priority_queue_text_modify_up_timing_test_gcc.png, priority_queue_text_modify_up_timing_test.html, priority_queue_text_modify_up_timing_test_local.png, priority_queue_text_modify_up_timing_test_msvc.png, priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png, priority_queue_text_modify_up_timing_test_pairing_thin_local.png, priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png, priority_queue_text_pop_mem_usage_test_gcc.png, priority_queue_text_pop_mem_usage_test.html, priority_queue_text_pop_mem_usage_test_local.png, priority_queue_text_pop_mem_usage_test_msvc.png, priority_queue_text_push_pop_timing_test_gcc.png, priority_queue_text_push_pop_timing_test.html, priority_queue_text_push_pop_timing_test_local.png, priority_queue_text_push_pop_timing_test_msvc.png, priority_queue_text_push_timing_test_gcc.png, priority_queue_text_push_timing_test.html, priority_queue_text_push_timing_test_local.png, priority_queue_text_push_timing_test_msvc.png, PythonPoweredSmall.gif quadratic_probe_fn.html, random_int_find_find_timing_test_tree_gcc.png, random_int_find_find_timing_test_tree_local.png, random_int_find_find_timing_test_tree_msvc.png, range_invalidation_guarantee.html, rationale_null_node_updator.png, rb_tree_tag.html, rc_binomial_heap_tag.html, references.html, resize_error.html, resize_policy_cd.png, restoring_node_invariants.png, sample_probe_fn.html, sample_ranged_hash_fn.html, sample_ranged_probe_fn.html, sample_range_hashing.html, sample_resize_policy.html, sample_resize_trigger.html, sample_size_policy.html, sample_tree_node_update.html, sample_trie_access_traits.html, sample_trie_node_update.html, sample_update_policy.html, simple_list.png, splay_tree_tag.html, tests.html, text_find_timing_test_hash_gcc.png, text_find_timing_test_hash_local.png, text_find_timing_test_hash_msvc.png, text_find_timing_test_tree_like_gcc.png, text_find_timing_test_tree_like_local.png, text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html, tree_based_containers.html, tree.html, tree_node_iterator.html, tree_node_updator_policy_cd.png, tree_order_statistics_node_update.html, tree_order_statistics_timing_test_gcc.png, tree_order_statistics_timing_test.html, tree_order_statistics_timing_test_local.png, tree_order_statistics_timing_test_msvc.png, tree_random_int_find_find_timing_test.html, tree_split_join_timing_test_gcc.png, tree_split_join_timing_test.html, tree_split_join_timing_test_local.png, tree_split_join_timing_test_msvc.png, tree_tag.html, tree_text_find_find_timing_test.html, tree_text_insert_timing_test.html, tree_text_insert_timing_test_node_tree_gcc.png, tree_text_insert_timing_test_node_tree_local.png, tree_text_insert_timing_test_node_tree_msvc.png, tree_text_insert_timing_test_pat_trie_gcc.png, tree_text_insert_timing_test_pat_trie_local.png, tree_text_insert_timing_test_pat_trie_msvc.png, tree_text_insert_timing_test_vector_tree_gcc.png, tree_text_insert_timing_test_vector_tree_local.png, tree_text_insert_timing_test_vector_tree_msvc.png, tree_text_lor_find_find_timing_test.html, tree_text_lor_find_timing_test_gcc.png, tree_text_lor_find_timing_test_local.png, tree_text_lor_find_timing_test_msvc.png, trie_based_containers.html, trie_const_node_iterator.html, trie.html, trie_node_iterator.html, trie_node_updator_policy_cd.png, trie_order_statistics_node_update.html, trie_prefix_search_node_update.html, trie_string_access_traits.html, trie_tag.html, trivial_iterator_tag.html, tutorial.html, update_policy_cd.png, update_seq_diagram.png): Remove. 2011-07-27 Paolo Carlini PR c++/49813 * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr. 2011-07-27 Jeffrey Yasskin * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated. 2011-07-25 Benjamin Kosnik * include/std/array (at): Remove constexpr when -fno-exceptions. * testsuite/23_containers/array/at_neg.cc: Test. 2011-07-25 Paolo Carlini Nathan Ridge PR libstdc++/49836 * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux): Declare. (vector<>::push_back(const value_type&)): Use it. * include/bits/vector.tcc: Define. (vector<>::emplace_back(_Args&&...)): Use it. * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType): Add. * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New. * testsuite/23_containers/deque/modifiers/push_back/49836.cc: Likewise. * testsuite/23_containers/deque/modifiers/push_front/49836.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * 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. 2011-07-24 Paolo Carlini * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt, _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit. 2011-07-24 François Dumont * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use __builtin_floor rather than __builtin_ceil to compute next resize value. * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc: New. 2011-07-22 Benjamin Kosnik Daniel Krugler * include/bits/move.h (move, forward): Mark constexpr. * include/bits/stl_pair.h (pair): Mark move ctors constexpr. * testsuite/20_util/pair/make_pair/constexpr.cc: New. * testsuite/20_util/pair/cons/constexpr.cc: Add tests. 2011-07-22 Ian Lance Taylor * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed. * Makefile.in: Rebuild. * doc/Makefile.in: Rebuild. * include/Makefile.in: Rebuild. * libsupc++/Makefile.in: Rebuild. * po/Makefile.in: Rebuild. * python/Makefile.in: Rebuild. * src/Makefile.in: Rebuild. * testsuite/Makefile.in: Rebuild. 2011-07-21 Benjamin Kosnik * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move... * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here. * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here. * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move... * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here. * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here. * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move... * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here. * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here. * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move... * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here. * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here. * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move. * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here. * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here. * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move... * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here. * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here. * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move... * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here. * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here. * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move... * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here. * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move... * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here. 2011-07-21 François Dumont * include/debug/safe_unordered_sequence.h, safe_unordered_sequence.tcc: Rename respectively in... * include/debug/safe_unordered_container.h, safe_unordered_container.tcc: ...those. _Safe_unordered_sequence rename _Safe_unordered_container. * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base rename _Safe_unordered_container_base. * include/debug/unordered_map, unordered_set: Adapt to previous modifications. * config/abi/pre/gnu.ver: Likewise. * src/debug.cc: Likewise. * include/Makefile.am: Likewise. * include/Makefile.in: Regenerate. 2011-07-21 Paolo Carlini * include/std/mutex (timed_mutex, recursive_timed_mutex): Update to use steady_clock instead of monotonic_clock. * config/abi/pre/gnu.ver: Export steady_clock::now. 2011-07-20 Benjamin Kosnik Daniel Krugler * include/std/array (array::at, array::operator[]): Mark constexpr. * testsuite/23_containers/array/requirements/ constexpr_element_access.cc: Add. 2011-07-20 Benjamin Kosnik Daniel Krugler * include/std/chrono: (system_clock::is_steady): Update to N3291 from is_monotonic. (time_point): Mark nonmember arithmetic operators constexpr. * src/chrono.cc: Modify for above. * src/compatibility-c++0x.cc: Same. * testsuite/20_util/time_point/nonmember/constexpr.cc: New. * testsuite/20_util/time_point/1.cc: Modify. * testsuite/20_util/system_clock/constexpr_data.cc: Modify. * testsuite/20_util/system_clock/1.cc: Modify. * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to... * testsuite/20_util/steady_clock/constexpr_data.cc: ...here. * testsuite/30_threads/condition_variable/members/2.cc: Modify. * testsuite/30_threads/condition_variable_any/members/2.cc: Modify. 2011-07-20 Paolo Carlini * include/std/system_error: Use noexcept. * src/system_error.cc: Likewise. * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust. * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise. * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise. * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise. * testsuite/util/testsuite_error.h: Likewise. * include/std/system_error (error_code::error_code(_ErrorCodeEnum)): Use enable_if on template parameter default. (error_condition::error_condition(_ErrorConditionEnum)): Likewise. 2011-07-20 Ed Smith-Rowland <3dw4rd@verizon.net> * include/precompiled/stdc++.h: Add scoped_allocator. 2011-07-20 Benjamin Kosnik * include/std/bitset (operator[]): Make constexpr. * testsuite/23_containers/bitset/operations/constexpr.cc: New. 2011-07-20 Paolo Carlini * include/debug/safe_local_iterator.h (_Safe_local_iterator<>:: _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)): Fix typo. 2011-07-19 François Dumont * include/debug/safe_unordered_base.h, safe_unordered_sequence.h, safe_unordered_sequence.tcc, safe_local_iterator.h, safe_local_iterator.tcc: New, support for unordered sequence safe local iterators. * include/Makefile.am: Add previous files. * include/Makefile.in: Regenerate. * include/debug/unordered_map, unordered_set: Implement _Safe_unordered_sequence and expose _Safe_local_iterator. * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor _Safe_iterator::_M_get_distance static method to expose it as __get_distance function and use it in _Safe_local_iterator type. * include/debug/formatter.h: Add __msg_local_iter_compare_bad _Debug_msg_id enum entry to notify invalid comparison between local iterators from different buckets. Add _Parameter constructor from _Safe_local_iterator. * include/debug/functions.h: Add __valid_range overload for _Safe_local_iterator. * src/debug.cc: Add _Safe_unordered_sequence_base and _Safe_local_iterator_base methods implementations. * config/abi/pre/gnu.ver: Add export of some _Safe_unordered_sequence_base and _Safe_local_iterator_base methods. * testsuite/util/debug/checks.h: Add use_invalid_iterator function to simulate use of a singular iterator. * testsuite/util/debug/unordered_checks.h: New, several functions to simulate classic invalid usage of unordered sequence local iterators. * testsuite/23_containers/unordered_map/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_multimap/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_set/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_multiset/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. 2011-07-18 Paolo Carlini PR libstdc++/48430 * include/bits/shared_ptr.h (struct hash>): Use __hash_base. * include/bits/unique_ptr.h (struct hash>): Likewise. 2011-07-18 Rainer Orth * crossconfig.m4 (*-netware): Remove. * configure: Regenerate. 2011-07-15 Yufeng Zhang * config/locale/newlib/ctype_members.cc: New file. * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind: newlib. Configure to use the newlib specific ctype_members.cc when with_newlib is enabled. * configure: Regenerate. 2011-07-15 Paolo Carlini Jakub Jelinek PR libstdc++/49745 * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK. * libsupc++/guard.cc: Include . * testsuite/17_intro/headers/c++1998/49745.cc: New. * configure: Regenerate. * config.h.in: Likewise. 2011-07-11 Paolo Carlini PR libstdc++/49559 * include/bits/stl_algo.h (__move_merge_backward): Remove. (__move_merge_adaptive, __move_merge_adaptive_backward): New. (__merge_adaptive): Use the latter two. (__rotate_adaptive): Avoid self move-assignment. * include/bits/stl_algobase.h (move_backward): Fix comment. * testsuite/25_algorithms/stable_sort/49559.cc: New. * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise. * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend. * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise. * testsuite/util/testsuite_rvalref.h (rvalstruct::operator= (rvalstruct&&)): Check for self move-assignment. 2011-07-11 Paolo Carlini * testsuite/util/testsuite_allocator.h (propagating_allocator<>:: operator=(const propagating_allocator<>&)): Retun *this. 2011-07-09 Jonathan Wakely * include/Makefile.am: Add new header. * include/Makefile.in: Regenerate. * include/std/scoped_allocator: New. * doc/xml/manual/status_cxx200x.xml: Update. * testsuite/20_util/scoped_allocator/1.cc: New. * testsuite/20_util/scoped_allocator/propagation.cc: New. * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New. * testsuite/20_util/scoped_allocator/requirements/ explicit_instantiation.cc: New. 2011-07-09 Jonathan Wakely * include/bits/stl_vector.h: Use new allocator model in C++0x mode. * include/bits/vector.tcc: Likewise. * testsuite/util/testsuite_allocator.h (propagating_allocator): Define. * testsuite/23_containers/vector/allocator/copy_assign.cc: New. * testsuite/23_containers/vector/allocator/noexcept.cc: New. * testsuite/23_containers/vector/allocator/copy.cc: New. * testsuite/23_containers/vector/allocator/swap.cc: New. * testsuite/23_containers/vector/allocator/move_assign.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. 2011-07-09 Jonathan Wakely * 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. 2011-07-09 Jonathan Wakely * 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>::pointer_to): Define. 2011-07-09 Jonathan Wakely PR libstdc++/49668 * include/std/functional (__bind_simple): Define. * include/std/future (_Task_setter): Parameterize by type of result pointer instead of state object. (_S_task_setter): Type deduction helper. (_Task_state): Use _S_task_setter and __bind_simple. (_Deferred_state, _Async_state): Store call wrapper directly not as std::function. Use _S_task_setter and __bind_simple. (_S_make_deferred_state, _S_make_async_state): Type deduction helpers. (async): Use new functions and __bind_simple. * include/std/mutex (call_once): Use __bind_simple. * include/std/thread (thread): Likewise. Remove unused headers. * src/thread.cc: Add header. * testsuite/30_threads/async/49668.cc: New. * testsuite/30_threads/call_once/49668.cc: New. * testsuite/30_threads/thread/cons/49668.cc: New. * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool. 2011-07-08 Rainer Orth * configure.host (abi_baseline_subdir_switch): Describe. Provide default. (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override. * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute baseline_subdir_switch. * testsuite/Makefile.am (site.exp): Emit it. (baseline_subdir): Use it. * testsuite/libstdc++-abi/abi.exp: Use it. * configure: Regenerate. * Makefile.in: Regenerate. * doc/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * libsupc++/Makefile.in: Regenerate. * po/Makefile.in: Regenerate. * python/Makefile.in: Regenerate. * src/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. 2011-06-29 François Dumont * include/debug/set.h, unordered_map, multiset.h, forward_list, unordered_set, vector, deque, string, list, multimap.h: Remove base class default constructor calls. * include/debug/map.h: Likewise and cleanup several redefinition of base iterator typedef. 2011-06-29 Nathan Sidwell * libsupc++/eh_arm.c (__cxa_type_match): Construct address of thrown object here. Return succeded_with_ptr_to_base for all pointer cases. 2011-06-23 Jonathan Wakely * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for C++0x mode. * testsuite/25_algorithms/sort/35588.cc: Likewise. * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise. 2011-06-22 Jonathan Wakely * testsuite/20_util/bind/socket.cc: Use variable and remove attribute. 2011-06-22 Paolo Carlini * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall warning. 2011-06-22 Paolo Carlini * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings. * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise. * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise. * testsuite/20_util/allocator_traits/members/allocate_hint.cc: Likewise. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. * testsuite/20_util/bind/socket.cc: Likewise. * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise. * testsuite/util/testsuite_random.h: Likewise. 2011-06-22 Jonathan Wakely * 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. 2011-06-22 Daniel Krugler Paolo Carlini * include/bits/move.h (__is_nothrow_swappable): Add. (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept. * include/bits/algorithmfwd.h: Adjust. * testsuite/25_algorithms/swap/noexcept.cc: New. 2011-06-21 Jakub Jelinek * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add check-DEJAGNUnormal[4-9]. (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4. * testsuite/Makefile.in: Regenerated. 2011-06-20 Daniel Krugler Paolo Carlini * include/std/tuple (__conv_types, __one_by_one_convertible, __all_convertible): Add. (tuple): Use the latter. (tuple<_T1>): Remove. * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line number. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise. 2011-06-14 Jonathan Wakely * include/bits/ptr_traits.h (pointer_traits::pointer_to): Use noexcept. 2011-06-14 Paolo Carlini * include/std/valarray (~valarray): Use noexcept. * include/bits/unique_ptr.h (~unique_ptr): Likewise. * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New. * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc: Likewise. * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc: Likewise. * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc: Likewise. 2011-06-14 Paolo Carlini * include/std/functional: Use noexcept. * include/bits/stl_tempbuf.h: Likewise. 2011-06-12 François Dumont Paolo Carlini * 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::_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. 2011-06-11 Jonathan Wakely * 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. 2011-06-11 Jonathan Wakely * testsuite/20_util/allocator_traits/requirements/ explicit_instantiation.cc: Add another instantiation. 2011-06-11 Jonathan Wakely * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check for allocator_type and value_type. 2011-06-11 Jonathan Wakely * testsuite/30_threads/packaged_task/uses_allocator.cc: New. * testsuite/30_threads/promise/uses_allocator.cc: Likewise. 2011-06-10 Paolo Carlini * 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 directly, include instead. 2011-06-10 Benjamin Kosnik * include/ext/pb_ds/*: Doxygen markup redo. * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp. * include/Makefile.in: Regenerate. 2011-06-10 Jason Merrill * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines. * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors, fix dg-error markup. 2011-06-09 Jason Merrill * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust. * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes. * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. * testsuite/20_util/forward/1_neg.cc: Likewise. * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise. * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise. * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc: Likewise. * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise. * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise. * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc: Likewise. * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise. * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/assign/ auto_ptr_rvalue_neg.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc: Likewise. * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ assign_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/forward_list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ assign_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. * testsuite/23_containers/list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ assign_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/vector/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/map/operators/1_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/ bitwise_neg.cc: Likewise. * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise. * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise. * testsuite/decimal/operator_neg.cc: Likewise. 2011-06-09 Simon Baldwin * scripts/extract_symvers.in: Handle processor/OS specific or unknown symbol binding strings from readelf. 2011-06-09 Paolo Carlini * include/std/type_traits (__is_copy_assignable_impl, __is_nt_copy_assignable_impl): Fix typo. 2011-06-08 Paolo Carlini * include/ext/extptr_allocator.h: Include instead of . * include/bits/allocator.h: Likewise. * include/std/chrono (duration_values<>::min): Call lowest, not min. 2011-06-08 Paolo Carlini * include/bits/allocator.h (__shrink_to_fit): Simplify. * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust. * include/bits/stl_deque.h: Likewise. * include/bits/stl_bvector.h: Likewise. 2011-06-07 Jason Merrill * testsuite/lib/prune.exp: s/required/instantiated/. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise. * testsuite/20_util/forward/1_neg.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise. * testsuite/ext/ext_pointer/1_neg.cc: Likewise. * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise. * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise. * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise. * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise. * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/assign/ shared_ptr_neg.cc: Likewise. 2011-06-07 Paolo Carlini * include/bits/move.h (struct __move_if_noexcept_cond): Add. (move_if_noexcept): Use the latter. * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator, _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add. * include/bits/stl_uninitialized.h (__uninitialized_move_if_noexcept_a): Add. * include/bits/vector.tcc (vector<>::reserve): Use _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR. (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append, _M_range_insert): Use __uninitialized_move_if_noexcept_a. * testsuite/util/testsuite_rvalref.h (throwing_move_constructor): Add. (copycounter::copycounter(copycounter&&)): Use noexcept. * testsuite/23_containers/vector/modifiers/moveable2.cc: New. * testsuite/23_containers/vector/capacity/resize/moveable2.cc: Likewise. * testsuite/23_containers/vector/capacity/reserve/moveable2.cc: Likewise. 2011-06-07 Paolo Carlini PR libstdc++/49293 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak for glibc 2.14. * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise. 2011-06-06 Paolo Carlini * include/bits/move.h (move_if_noexcept): Use __and_ and __not_. 2011-06-05 Jonathan Wakely * include/bits/ptr_traits.h (pointer_traits): Fix typos. * include/ext/pointer.h (pointer_traits): Add partial specialization for _Pointer_adapter. 2011-06-04 Jonathan Wakely * testsuite/util/testsuite_allocator.h (tracker_allocator::construct): Update to C++0x definition using type to construct as template parameter. (tracker_allocator::destroy): Likewise for type to destroy. (uneq_allocator::construct, uneq_allocator::destroy): Likewise. 2011-06-01 Paolo Carlini * 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. 2011-05-31 Paolo Carlini * 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. 2011-05-31 Jonathan Wakely * doc/xml/manual/status_cxx200x.xml: Update. * doc/html/*: Regenerate. 2011-05-30 Paolo Carlini * include/std/type_traits (__or_, __and_): Add trivial definitions for a single element. * include/bits/stl_pair.h: Use __and_ in noexcept specs and constraints. (pair<>::pair(pair&&)): Define. (pair<>::pair(const pair<>&)): Constrain with is_convertible. (pair<>::pair(pair<>&&)): Likewise, remove noexcept. * include/std/tuple: Use __and_ in noexcept specs and constraints. (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&, _Tuple_impl&&)): Remove noexcept. (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&), tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&), tuple(pair<_U1, _U2>&&)): Constrain with is_convertible. * testsuite/20_util/tuple/moveable2.cc: Use = delete. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise. 2011-05-31 Jonathan Wakely * include/std/tuple: Restore is_convertible constraint. * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove. 2011-05-30 Paolo Carlini PR libstdc++/49236 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line number. 2011-05-30 Jonathan Wakely * include/std/tuple: Implement uses-allocator construction. * include/bits/allocator.h (uses_allocator): Move to ... * include/bits/uses_allocator.h: New file. * include/Makefile.am: Add new header. * include/Makefile.in: Regenerate. * testsuite/20_util/uses_allocator/cons_neg.cc: New. * testsuite/20_util/uses_allocator/construction.cc: New. * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New. * testsuite/20_util/tuple/cons/allocators.cc: New. 2011-05-28 Jonathan Wakely * testsuite/20_util/pointer_traits/pointer_to.cc: Fix. 2011-05-28 Jonathan Wakely * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and GLIBCXX_CHECK_SC_NPROCESSORS_ONLN. * configure.ac: Use them. Increase minor version. * configure: Regenerate. * config.h.in: Regenerate. * include/std/thread (thread::hardware_concurrency): Remove inline definition. * src/thread.cc (thread::hardware_concurrency): Define. * config/abi/pre/gnu.ver: Export new symbol @3.4.17 * testsuite/util/testsuite_abi.cc: Add new version. * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add. * testsuite/lib/dg-options.exp (dg-require-nprocs): Add. * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use dg-require-nprocs and verify hardware_concurrency returns non-zero. 2011-05-28 Jonathan Wakely * testsuite/20_util/pointer_traits/pointer_to.cc: New. 2011-05-28 Jonathan Wakely * 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. 2011-05-28 Jonathan Wakely * include/std/future (launch): Update enumerators and define operators required for bitmask type. Remove trailing whitespace. * src/future.cc: Remove trailing whitespace. * testsuite/30_threads/async/any.cc: Adjust. * testsuite/30_threads/async/sync.cc: Adjust. * testsuite/30_threads/async/launch.cc: New. 2011-05-28 Jonathan Wakely * include/std/future: Use noexcept. * src/future.cc: Likewise. 2011-05-27 Jonathan Wakely * include/std/thread (this_thread::sleep_until): Move after sleep_for. 2011-05-27 Paolo Carlini PR libstdc++/49187 * include/parallel/losertree.h: Add missing using declarations of _Base::_M_comp. * include/parallel/algobase.h: Include . * include/parallel/multiway_merge.h: Include , forward declare __merge_advance. * include/parallel/multiseq_selection.h: Don't include 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. 2011-05-26 Paolo Carlini * src/list.cc: Use noexcept per the FDIS. * src/compatibility-list-2.cc: Likewise. * include/debug/set.h: Likewise. * include/debug/unordered_map: Likewise. * include/debug/multiset.h: Likewise. * include/debug/forward_list: Likewise. * include/debug/unordered_set: Likewise. * include/debug/vector: Likewise. * include/debug/map.h: Likewise. * include/debug/deque: 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/vector: Likewise. * include/profile/unordered_set: Likewise. * include/profile/map.h: Likewise. * include/profile/deque: Likewise. * include/profile/list: Likewise. * include/profile/multimap.h: Likewise. * include/bits/hashtable.h: Likewise. * include/bits/stl_list.h: Likewise. * include/bits/stl_map.h: Likewise. * include/bits/hashtable_policy.h: Likewise. * include/bits/stl_set.h: Likewise. * include/bits/forward_list.h: Likewise. * include/bits/stl_multimap.h: Likewise. * include/bits/stl_vector.h: Likewise. * include/bits/stl_deque.h: Likewise. * include/bits/stl_multiset.h: Likewise. * include/bits/stl_bvector.h: Likewise. * include/bits/stl_tree.h: Likewise. 2011-05-25 Paolo Carlini * include/bits/stl_queue.h: Use noexcept per the FDIS. * include/bits/stl_stack.h: Likewise. 2011-05-25 Paolo Carlini * config/abi/pre/gnu.ver: Correct last change, export instead at the existing @3.4.16. * configure.ac: Revert last change. * testsuite/util/testsuite_abi.cc: Likewise. * configure: Regenerate. 2011-05-26 Jonathan Wakely * doc/xml/manual/documentation_hacking.xml: Minor corrections. 2011-05-26 Jonathan Wakely * include/std/mutex: Add doxygen comments. 2011-05-25 Paolo Carlini * config/abi/pre/gnu.ver: Export recently added basic_streambuf and basic_stringbuf symbols @3.4.17. * configure.ac: Update. * testsuite/util/testsuite_abi.cc: Likewise. * configure: Regenerate. 2011-05-26 Jonathan Wakely * libsupc++/guard.cc: Fix comments. 2011-05-25 Ian Lance Taylor PR libstdc++/49060 * include/backward/hashtable.h (hashtable::erase): Don't crash if erasing first and another element with a reference to the other element. * testsuite/backward/hash_set/49060.cc: New. 2011-05-25 Paolo Carlini * include/bits/random.h (random_device::min, max): Specify constexpr. 2011-05-25 Paolo Carlini * include/std/thread: Use noexcept throughout per the FDIS. * include/std/mutex: Likewise. 2011-05-24 Paolo Carlini * testsuite/20_util/duration/arithmetic/dr2020.cc: Fix typo. 2011-05-24 Paolo Carlini PR libstdc++/49151 * include/std/chrono (operator+, operator-, operator*, operator/, operator&): Implement LWG 2020 [WP]; specify constexpr. * testsuite/20_util/duration/arithmetic/dr2020.cc: New. 2011-05-24 Paolo Carlini PR libstdc++/49141 * testsuite/26_numerics/complex/cons/48760.cc: Use dg-require-c-std. * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise. * testsuite/26_numerics/headers/cmath/19322.cc: Likewise. 2011-05-24 Paolo Carlini * include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line number. 2011-05-23 Benjamin Kosnik 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. 2011-05-23 Paolo Carlini * include/bits/streambuf_iterator.h: Use noexcept per the FDIS. (istreambuf_iterator<>::istreambuf_iterator(const istreambuf_iterator&), ~istreambuf_iterator()): Add defaulted in C++0x mode. 2011-05-23 Jason Merrill * libsupc++/exception_ptr.h: Fix compilation in C++0x mode. 2011-05-22 Jonathan Wakely * testsuite/20_util/bind/cv_quals_2.cc: New. 2011-05-22 Paolo Carlini PR libstdc++/49058 * include/std/functional (_Bind<_Functor(_Bound_args...)>:: operator()(_Args&&...)): Don't cv qualify _Functor directly in the default template argument, SFINAE doesn't apply when the functor has no arguments. * testsuite/20_util/bind/49058_1.cc: New. * testsuite/20_util/bind/49058_2.cc: Likewise. 2011-05-21 Paolo Carlini * include/bits/unique_ptr.h: Use noexcept per the FDIS. 2011-05-20 Paolo Carlini * testsuite/21_strings/basic_string/requirements/exception/ propagation_consistent.cc: Fix vs POD-ness of value_type. * testsuite/21_strings/basic_string/requirements/exception/ basic.cc: Likewise. * testsuite/ext/vstring/requirements/exception/ propagation_consistent.cc: Likewise. * testsuite/ext/vstring/requirements/exception/basic.cc: Likewise. 2011-05-20 Paolo Carlini * include/bits/char_traits.h: Use noexcept throughout. * include/std/typeindex: Likewise. * include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use noexcept; adjust callers. * include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept. * testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New. * testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise. * testsuite/20_util/pair/noexcept_swap.cc: Likewise. * testsuite/20_util/pair/noexcept_move_assign.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line numbers. 2011-05-20 Jason Merrill * 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. 2011-05-19 Paolo Carlini * include/std/tuple (tuple_element<__i, const _Tp>, tuple_element<__i, volatile _Tp>, tuple_element<__i, const volatile _Tp>, tuple_size, tuple_size, tuple_size): Add. * include/std/utility (tuple_size>): Tweak. * include/std/array (tuple_size>): Likewise. * testsuite/20_util/tuple/cv_tuple_size.cc: New. * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning line number. 2011-05-19 Paolo Carlini * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as noexcept. (__get_helper): Likewise. (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise. * include/bits/move.h (swap): Likewise. * include/bits/algorithmfwd.h (swap): Adjust. * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept. * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x mode, prefer delete to access control to make the type not copy assignable. * testsuite/util/testsuite_tr1.h: Add test classes. * testsuite/20_util/tuple/noexcept_swap.cc: New. * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise. * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer delete to access control. * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line numbers. 2011-05-19 Daniel Krugler * testsuite/util/testsuite_tr1.h: Add test classes. * testsuite/20_util/is_nothrow_assignable/value.cc: Add. 2011-05-19 Paolo Carlini * include/std/type_traits (is_assignable, is_copy_assignable, is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable, is_nothrow_move_assignable): Add; minor tweaks elsewhere. (has_nothrow_copy_assign): Remove. * testsuite/util/testsuite_tr1.h: Add test classes. * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add. * testsuite/20_util/is_assignable/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise. * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_nothrow_assignable/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_move_assignable/value.cc: Likewise. * testsuite/20_util/is_move_assignable/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_move_assignable/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_copy_assignable/value.cc: Likewise. * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_copy_assignable/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise. * testsuite/20_util/is_nothrow_move_assignable/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_nothrow_move_assignable/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise. * testsuite/20_util/is_nothrow_copy_assignable/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_nothrow_copy_assignable/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. 2011-05-18 Jonathan Wakely * include/bits/shared_ptr_base.h: Use noexcept. Define special member functions as defaulted/deleted. * include/bits/shared_ptr.h: Use noexcept. * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers. * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise. 2011-05-18 Jonathan Wakely * doc/xml/manual/bitmap_allocator.xml: Fix typos. 2011-05-18 Paolo Carlini * libsupc++/initializer_list: Use noexcept specifier. (initializer_list<>::size, begin, end): Qualify as const. * include/bits/move.h (__addressof, forward, move, addressof): Specify as noexcept. * include/std/bitset: Use noexcept specifier throughout. * include/debug/bitset: Update. * include/profile/bitset: Likewise. 2011-05-17 Paolo Carlini * include/std/tuple: Use noexcept where appropriate. (tuple<>::swap): Rework implementation. (_Head_base<>::_M_swap_impl): Remove. (get(std::tuple<>&&)): Add. * testsuite/20_util/tuple/element_access/get2.cc: New. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error line number. 2011-05-16 Paolo Carlini * include/std/utility: Simplify the last commit, the whole std::get code is C++0x only. 2011-05-16 Paolo Carlini * include/std/utility (get(std::pair<>&&)): Add. * include/bits/stl_pair.h (pair::swap(pair&), swap(pair<>&, pair<>&)): Use noexcept. * include/bits/random.h (discard_block_engine<>::base, independent_bits_engine<>::base, shuffle_order_engine<>::base, random_device::entropy): Use noexcept. * include/std/array: Use noexcept where appropriate. (get(array<>&&)): Add. * testsuite/23_containers/array/requirements/get.cc: New. * testsuite/20_util/pair/get.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error line number. 2011-05-15 Paolo Carlini * include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT): Add. * include/std/limits: Use the latter everywhere. (numeric_limits, numeric_limits): Simplify macro usages, the specializations exist only in C++0x mode. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line number. 2011-05-11 Paolo Carlini * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use dg-require-cmath. * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise. 2011-05-11 François Dumont * 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. 2011-05-09 Paolo Carlini PR libstdc++/48933 * include/c_global/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, hypot, ilogb, lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint, nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma, trunc): Use __enable_if on the return type. * include/tr1/cmath: Likewise. * testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: New. * testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise. 2011-05-07 François Dumont * 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. 2011-05-06 Paolo Carlini * testsuite/22_locale/messages_byname/named_equivalence.cc: Fix. 2011-05-04 Marc Glisse PR libstdc++/47913 (again) * include/std/ratio (ratio_add, ratio_less): Rewrite. * testsuite/20_util/ratio/operations/47913.cc: Extend. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. 2011-05-03 Paolo Carlini PR libstdc++/48848 * include/std/valarray (valarray<>::valarray(valarray&&), valarray<>::operator=(valarray&&), valarray<>::swap): Add. * doc/xml/manual/status_cxx200x.xml: Update. * testsuite/26_numerics/valarray/moveable.cc: New. * testsuite/26_numerics/valarray/swap.cc: Likewise. 2011-05-03 Paolo Carlini PR libstdc++/48750 * include/parallel/multiway_merge.h: Run _ValueType destructors. * include/parallel/multiway_mergesort.h: Likewise. * include/parallel/quicksort.h: Likewise. * include/parallel/random_shuffle.h: Likewise. * include/parallel/partial_sum.h: Likewise. * include/parallel/losertree.h: Run destructors; minor tweaks. * include/parallel/par_loop.h: Run destructors, fix memory allocations and deallocations. * testsuite/26_numerics/accumulate/48750.cc: New. * testsuite/ext/profile/mutex_extensions_neg.cc: Do not run in parallel-mode to avoid spurious multiple errors. 2011-05-03 Jonathan Wakely * include/std/functional (bind): Remove from overload set when first argument type might be a socket file descriptor. * testsuite/20_util/bind/socket.cc: New. 2011-05-03 Jonathan Wakely PR libstdc++/48848 * doc/xml/manual/status_cxx200x.xml: Update valarray status. * doc/html/*: Regenerate. 2011-05-02 Ollie Wild * include/ext/sso_string_base.h (__sso_string_base<>::_M_construct): Fix unqualified lookup. (__sso_string_base<>::_M_assign): Likewise. (__sso_string_base<>::_M_reserve): Likewise. (__sso_string_base<>::_M_mutate): Likewise. (__sso_string_base<>::_M_erase): Likewise. * include/ext/vstring.h (__versa_string<>::replace): Likewise. (__versa_string<>::compare): Likewise. * include/ext/vstring.tcc (__versa_string<>::compare): Likewise. 2011-05-02 Jonathan Wakely * doc/xml/manual/status_cxx200x.xml: Update to reflect current status and FDIS content. * doc/xml/manual/documentation_hacking.xml: Fix typo. * doc/html/*: Regenerate. 2011-04-30 Daniel Krugler * include/std/type_traits (__is_default_constructible_atom, __is_default_constructible_safe<, true>, __is_direct_constructible_new_safe, __is_base_to_derived_ref<,, true>, __is_lvalue_to_rvalue_ref<,, true>, __is_direct_constructible_ref_cast, __is_direct_constructible, __is_nary_constructible): Simplify; add comments throughout. 2011-04-30 Paolo Carlini * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. 2011-04-30 Doug Kwan * include/Makefile.am (install-freestanding-headers): Also install cxxabi_tweaks.h. * include/Makefile.in: Regenerate. 2011-04-28 Paolo Carlini PR libstdc++/48760 * include/std/complex (complex::complex(float, float), complex::complex(double, double), complex::complex(long double, long double)): Use list-initialization in C++0x mode, initialize in the body in C++03 mode. * testsuite/26_numerics/complex/cons/48760.cc: New. * testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise. 2011-04-28 Paolo Carlini * include/std/bitset (_Base_bitset(unsigned long long)): Minor tweak, remove redundant round braces. 2011-04-27 Paolo Carlini * include/bits/move.h (move_if_noexcept): Add. * testsuite/20_util/move_if_noexcept/requirements/ explicit_instantiation.cc: New. * testsuite/20_util/move_if_noexcept/1.cc: Likewise. 2011-04-25 Paolo Carlini * include/std/type_traits (struct underlying_type): Add. * testsuite/20_util/underlying_type/requirements/typedefs-1.cc: New. * testsuite/20_util/underlying_type/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/underlying_type/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error line number. 2011-04-24 Paolo Carlini * include/parallel/multiway_merge.h: Uglify equally_split and equally_split_point throughout. * include/parallel/par_loop.h: Likewise. * include/parallel/equally_split.h: Likewise. * include/parallel/set_operations.h: Likewise. * include/parallel/unique_copy.h: Likewise. * include/parallel/multiway_mergesort.h: Likewise. * include/parallel/search.h: Likewise. * include/parallel/partial_sum.h: Likewise. * include/parallel/find.h: Likewise. 2011-04-24 Gerald Pfeifer * doc/xml/manual/parallel_mode.xml: Fix link to libgomp online documentation. Expand link text. 2011-04-24 Gerald Pfeifer * libsupc++/cxxabi.h: Adjust link to FAQ entry. 2011-04-22 François Dumont * testsuite/lib/libstdc++.exp (check_v3_target_time): Discard unused compilation result thanks to /dev/null. * testsuite/lib/libstdc++.exp (check_v3_target_debug_mode, check_v3_target_profile_mode, check_v3_target_normal_mode, check_v3_target_cstdint, check_v3_target_cmath, check_v3_target_atomic_builtins, check_v3_target_gthreads, check_v3_target_nanosleep, check_v3_target_sched_yield, check_v3_target_string_conversions, check_v3_target_swprintf, check_v3_target_binary_io): Use simple preprocessing rather than compilation. Discard unused preprocessing result thanks to /dev/null. 2011-04-20 Jim Meyering * libsupc++/del_opnt.cc (operator delete): Remove useless if-before-free. 2011-04-19 Jonathan Wakely PR libstdc++/48521 * include/std/type_traits (result_of): Handle pointer to member. * include/std/functional (__invoke): Likewise. (_Function_to_function_pointer): Remove. (_Reference_wrapper_base): Provide nested types independent of unary_function and binary_function. (reference_wrapper::operator()): DR 2017. (ref(const A&&), cref(const A&&): Define as deleted. * include/std/future (async): Simplify SFINAE and use result_of to support pointer to member. * testsuite/20_util/reference_wrapper/invoke.cc: Test pointer to member. * testsuite/20_util/reference_wrapper/24803.cc: Likewise. * testsuite/20_util/reference_wrapper/typedefs.cc: Test for types instead of derivation from unary_function and binary_function. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust. * testsuite/20_util/reference_wrapper/invoke-2.cc: New. * testsuite/20_util/reference_wrapper/ref_neg.c: New. * testsuite/20_util/reference_wrapper/typedefs-3.c: New. 2011-04-19 Hans-Peter Nilsson PR testsuite/48675 * testsuite/20_util/hash/chi2_quality.cc (test_document_words): Stub this part if SAMPLES < 100000. 2011-04-18 Paolo Carlini * include/std/type_traits (is_nothrow_default_constructible, is_nothrow_copy_constructible, is_nothrow_move_constructible, is_copy_constructible, is_move_constructible): Add. (has_nothrow_default_constructor, has_nothrow_copy_constructor): Remove. (is_nothrow_constructible): Adjust. * testsuite/util/testsuite_tr1.h (ThrowDefaultClass, ThrowCopyConsClass, ThrowMoveConsClass, NoexceptDefaultClass, ExceptDefaultClass, NoexceptCopyConsClass, ExceptCopyConsClass, NoexceptMoveConsClass, ExceptMoveConsClass): Add in C++0x mode. * testsuite/20_util/has_nothrow_default_constructor: Remove. * testsuite/20_util/has_nothrow_copy_constructor: Likewise. * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise. * testsuite/20_util/is_nothrow_move_constructible/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_nothrow_move_constructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise. * testsuite/20_util/is_nothrow_copy_constructible/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_nothrow_copy_constructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_nothrow_default_constructible/value.cc: Likewise. * testsuite/20_util/is_nothrow_default_constructible/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_nothrow_default_constructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_move_constructible/value.cc: Likewise. * testsuite/20_util/is_move_constructible/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_move_constructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_copy_constructible/value.cc: Likewise. * testsuite/20_util/is_copy_constructible/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_copy_constructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_default_constructible/value.cc: Add tests. * testsuite/20_util/is_nothrow_constructible/value.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. 2011-04-17 Paolo Carlini * testsuite/25_algorithms/partition/moveable.cc: Actually run it in parallel-mode for check-parallel. 2011-04-17 Daniel Krugler Paolo Carlini PR libstdc++/48635 (again) * include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&), unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&), unique_ptr<>::operator=(unique_ptr<>&&), unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not forward<_Dp>, to forward the deleter. * testsuite/20_util/unique_ptr/assign/48635_neg.cc: New. 2011-04-15 Daniel Krugler Paolo Carlini PR libstdc++/48631 * include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted function call operator. * testsuite/20_util/default_delete/48631_neg.cc: New. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error line numbers. 2011-04-15 Daniel Krugler Paolo Carlini PR libstdc++/48635 * include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&), unique_ptr<>::operator=(unique_ptr<>&&), unique_ptr<_Tp[],>::operator=(unique_ptr&&), unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter instead of moving it. * testsuite/20_util/unique_ptr/assign/48635.cc: New. 2011-04-15 Rainer Orth * scripts/extract_symvers.pl: Handle NOTY. 2011-04-15 Paolo Carlini * include/std/istream: Fix comments in the light of DR60 + N3168. 2011-04-13 Daniel Krugler Paolo Carlini PR libstdc++/48526 * include/std/type_traits (struct is_constructible): Re-implement, according to n3290. (struct is_default_constructible): Add. (struct is_destructible): Likewise. (struct __and_, __or_, __not_): Add and use throughout; reorder some facilities, other minor tweaks. * testsuite/util/testsuite_tr1.h: Add test types. * testsuite/20_util/is_constructible/value-2.cc: New. * testsuite/20_util/is_default_constructible/value.cc: Likewise. * testsuite/20_util/is_default_constructible/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_default_constructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_destructible/value.cc: Likewise. * testsuite/20_util/is_destructible/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_destructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise. 2011-04-13 Paolo Carlini * testsuite/20_util/is_function/value.cc: Add, adapted from the tr testsuite. * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_function/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_function/24808.cc: Likewise. * testsuite/20_util/is_function/35637.cc: Likewise. * testsuite/20_util/is_object/value.cc: Likewise. * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_object/requirements/explicit_instantiation.cc: : Likewise. * testsuite/20_util/is_object/24808.cc: Likewise. * testsuite/20_util/is_compound/value.cc: Likewise. * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_compound/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_member_object_pointer/value.cc: Likewise. * testsuite/20_util/is_member_object_pointer/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_member_object_pointer/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_fundamental/value.cc: Likewise. * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_fundamental/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_member_pointer/value.cc: Likewise. * testsuite/20_util/is_member_pointer/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_member_pointer/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_member_function_pointer/value.cc: Likewise. * testsuite/20_util/is_member_function_pointer/ requirements/typedefs.cc: Likewise. * testsuite/20_util/is_member_function_pointer/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust Copyright years. 2011-04-12 Takaya Saito PR libstdc++/48476 * include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&), _Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator= (_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate. * testsuite/20_util/tuple/cons/48476.cc: New. * testsuite/20_util/tuple/48476.cc: Likewise. * testsuite/20_util/tuple/creation_functions/48476.cc: Likewise. 2011-04-12 Allan McRae PR libstdc++/48566 * testsuite/tr1/6_containers/unordered_map/requirements/ iterator_null_neg.cc: Include . * testsuite/tr1/6_containers/unordered_set/requirements/ iterator_null_neg.cc: Likewise. * testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include . * testsuite/util/testsuite_common_types.h: Include . * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Adjust dg-error line numbers. * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/increment_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/cons/assign_neg.cc: Likewise. * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise. 2011-04-11 Jason Merrill * testsuite/20_util/is_convertible/value.cc: Adjust. 2011-04-11 Paolo Carlini * testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run it in parallel-mode for check-parallel. * testsuite/25_algorithms/rotate/moveable.cc: Likewise. * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise. * testsuite/25_algorithms/remove/moveable.cc: Likewise. * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise. * testsuite/25_algorithms/unique/moveable.cc: Likewise. * testsuite/25_algorithms/remove_if/moveable.cc: Likewise. * testsuite/25_algorithms/heap/moveable.cc: Likewise. * testsuite/25_algorithms/next_permutation/moveable.cc: Only skip the tests based on std::lexicographical_compare for check-parallel. * testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise. 2011-04-10 Jonathan Wakely PR libstdc++/48541 * include/std/functional (_Base_manager::_M_get_pointer): Use addressof. * testsuite/20_util/function/48541.cc: New. 2011-04-10 Jonathan Wakely PR libstdc++/48465 * configure.ac (libtool_VERSION): Bump library version to 6:16:0. * configure: Regenerate. * config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols. * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16. 2011-04-06 Jeffrey Yasskin * include/ext/algorithm (is_sorted): In C++0x mode import from namespace std. * include/ext/numeric (iota): In C++0x mode import from namespace std. * testsuite/ext/is_sorted/cxx0x.cc: New. * testsuite/ext/iota/cxx0x.cc: New. 2011-04-02 Jonathan Wakely PR libstdc++/48398 * include/bits/unique_ptr.h (__tuple_type): Store pointer type. * testsuite/20_util/unique_ptr/modifiers/48398.cc: New. * testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove unused parameter name. 2011-03-31 Jeffrey Yasskin * libsupc++/exception_ptr.h: Forward-declare std::type_info. * libsupc++/nested_exception.h (__throw_with_nested): Remove a redundant default argument from std::__throw_with_nested. 2011-03-31 Paolo Carlini PR libstdc++/48382 * src/ctype.cc: Do not include . * src/Makefile.am: Add ctype_configure_char.cc to host_sources. * src/Makefile.in: Regenerate. * include/Makefile.am: Remove ctype_noninline.h from host_headers. * include/Makefile.in: Regenerate. * doc/xml/manual/internals.xml: Update. * config/os/newlib/ctype_noninline.h: Fixup and rename to... * config/os/newlib/ctype_configure_char.cc: ... this. * config/os/aix/ctype_noninline.h: Likewise. * config/os/aix/ctype_configure_char.cc: Likewise. * config/os/vxworks/ctype_noninline.h: Likewise. * config/os/vxworks/ctype_configure_char.cc * config/os/hpux/ctype_noninline.h: Likewise. * config/os/hpux/ctype_configure_char.cc: Likewise. * config/os/gnu-linux/ctype_noninline.h: Likewise. * config/os/gnu-linux/ctype_configure_char.cc: Likewise. * config/os/mingw32/ctype_noninline.h: Likewise. * config/os/mingw32/ctype_configure_char.cc: Likewise. * config/os/tpf/ctype_noninline.h: Likewise. * config/os/tpf/ctype_configure_char.cc: Likewise. * config/os/uclibc/ctype_noninline.h: Likewise. * config/os/uclibc/ctype_configure_char.cc: Likewise. * config/os/bionic/ctype_noninline.h: Likewise. * config/os/bionic/ctype_configure_char.cc: Likewise. * config/os/djgpp/ctype_noninline.h: Likewise. * config/os/djgpp/ctype_configure_char.cc: Likewise. * config/os/qnx/qnx6.1/ctype_noninline.h: Likewise. * config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise. * config/os/bsd/netbsd/ctype_noninline.h: Likewise. * config/os/bsd/netbsd/ctype_configure_char.cc: Likewise. * config/os/bsd/darwin/ctype_noninline.h: Likewise. * config/os/bsd/darwin/ctype_configure_char.cc: Likewise. * config/os/bsd/freebsd/ctype_noninline.h: Likewise. * config/os/bsd/freebsd/ctype_configure_char.cc: Likewise. * config/os/irix/irix6.5/ctype_noninline.h: Likewise. * config/os/irix/irix6.5/ctype_configure_char.cc: Likewise. * config/os/generic/ctype_noninline.h: Likewise. * config/os/generic/ctype_configure_char.cc: Likewise. * config/os/solaris/solaris2.7/ctype_noninline.h: Likewise. * config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise. 2011-03-25 Jonathan Wakely * include/std/future (future::share): Add. (packaged_task::result_type): Remove as per LWG 2030. (packaged_task::packaged_task): Remove redundant constructors, as per LWG 1514. * testsuite/30_threads/future/members/share.cc: New. * testsuite/30_threads/packaged_task/requirements/typedefs.cc: Remove. 2011-03-25 Jonathan Wakely * testsuite/28_regex/match_results/ctors/char/default.cc: Do not call members which require a fully established result state. * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise. 2011-03-25 Paolo Carlini * include/bits/random.h (negative_binomial_distribution<>:: negative_binomial_distribution(_IntType, double), negative_binomial_distribution<>:: negative_binomial_distribution(const param_type&)): Tweak construction of _M_gd. * include/bits/random.tcc (negative_binomial_distribution<>:: operator()): Adjust. 2011-03-24 Paolo Carlini * include/bits/random.h (negative_binomial_distribution<>:: negative_binomial_distribution(_IntType, double), negative_binomial_distribution<>:: negative_binomial_distribution(const param_type&)): Fix construction of _M_gd. * include/bits/random.tcc (negative_binomial_distribution<>:: operator()): Fix computation, per Leger's algorithm. * testsuite/util/testsuite_random.h (discrete_pdf, negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New. (binomial_pdf): Swap last two parameters. * testsuite/26_numerics/random/discrete_distribution/ operators/values.cc: New. * testsuite/26_numerics/random/negative_binomial_distribution/ operators/values.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/ operators/values.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/ operators/values.cc: Likewise. * testsuite/26_numerics/random/binomial_distribution/ operators/values.cc: Adjust. 2011-03-24 Rainer Orth * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate. * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise. 2011-03-23 Matthias Klose * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Regenerated. 2011-03-23 Uros Bizjak * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated. 2011-03-22 Joseph Myers * configure.ac: Don't handle powerpc*-*-gnu*. * configure: Regenerate. 2011-03-22 Paolo Carlini * testsuite/21_strings/basic_string/cons/char/moveable2.cc: Tweak Copyright years. * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: Likewise. 2011-03-22 Paolo Carlini * include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add, per DR 1401. (operator==, operator!=, operator<): Fix per the letter of DR 1401. * include/bits/shared_ptr_base.h: Likewise for __shared_ptr. * include/bits/unique_ptr.h (operator==, operator!=, operator<, operator<=, operator>, operator>=): Fix per the letter of DR 1401. * testsuite/20_util/shared_ptr/comparison/dr1401.cc: New. * testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust. 2011-03-22 Jakub Jelinek * config/abi/pre/gnu.ver (GLIBCXX_3.4.15): Export _ZNSsC2EOSs and _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_. * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerated. * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise. * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise. * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise. * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise. * testsuite/21_strings/basic_string/cons/char/moveable2.cc: New test. * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc: New test. 2011-03-21 Jack Howarth * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune "could not create compact unwind for" warnings. 2011-03-21 Jakub Jelinek * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update. * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Likewise. * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise. * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise. * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise. * testsuite/util/testsuite_abi.cc (check_version): Set incompatible even when adding symbols to CXXABI_1.3, GLIBCXX_LDBL_3.4 and CXXABI_LDBL_1.3 versions. 2011-03-21 Benjamin Kosnik * config/abi/pre/gnu.ver: Remove typeinfo name exports for C++0x types. 2011-03-21 Jakub Jelinek * config/abi/pre/gnu.ver (CXXABI_1.3): Don't export _ZT[IS][PK]*[no]. (CXXABI_1.3.5): Export _ZTI[PK]*[no]. 2011-03-21 Rainer Orth * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on sparc*-sun-solaris2.10 && lp64. 2011-03-19 Paolo Carlini * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename to check_v3_target_cmath. * testsuite/lib/dg-options.exp (dg-require-c99_math): Rename to dg-require-cmath. * testsuite/26_numerics/random/binomial_distribution/ operators/values.cc: Adjust. 2011-03-18 Diego Novillo * testsuite/decimal/mixed-mode-arith_neg.cc: Rename from mixed-mode_neg.cc * testsuite/decimal/mixed-mode-cmp_neg.cc: Factor out of mixed-mode-arith_neg.cc 2011-03-18 Paolo Carlini * testsuite/util/testsuite_random.h: New. * testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Add. * testsuite/lib/dg-options.exp (dg-require-c99_math): Likewise. * testsuite/26_numerics/random/bernoulli_distribution/ operators/values.cc: New. * testsuite/26_numerics/random/binomial_distribution/ operators/values.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/ operators/values.cc: Likewise. 2011-03-16 Benjamin Kosnik * config/abi/pre/gnu.ver: Add base destructors for stdexcept classes. * testsuite/19_diagnostics/stdexcept.cc: New. 2011-03-15 Benjamin Kosnik * include/std/thread: Revert. * src/thread.cc: Same. * config/abi/pre/gnu.ver: Same. 2011-03-15 Doug Kwan PR libstdc++/48123 * include/Makefile.am (install-freestanding-headers): Install cpu_defines.h * include/Makefile.in: Regenerate. 2011-03-15 Benjamin Kosnik * config/abi/pre/gnu.ver: Make nested_exception exports super clear. Move bad_function_call exports from CXXABI_1.3.5 to GLIBCXX_3.4.15. 2011-03-14 Benjamin Kosnik PR libstdc++/48130 * src/future.cc: Guard definitions. * libsupc++/nested_exception.cc: Same. 2011-03-14 Benjamin Kosnik * src/Makefile.am: Add functional.cc, shared_ptr.cc. * src/Makefile.in: Regenerate. * libsupc++/Makefile.am: Add nested_exception.cc. * libsupc++/Makefile.in: Regenerate. * src/system_error.cc: Add ctor and dtor definitions for error_category. * src/functional.cc: New. Add dtor definition for bad_function_call. * src/stdexcept.cc: Add dtor definitions for domain_error, invalid_argument, length_error, out_of_range, range_error, overflow_error, underflow_error. * src/future.cc: Add dtor definition for __future_base::_Result_base. * src/shared_ptr.cc: New. Add dtor definition for bad_weak_ptr. * src/thread.cc: Add dtor for thread::_Impl_base. * include/std/system_error: Adjust. * include/std/stdexcept: Same. * include/std/future: Same. * include/std/functional: Same. * include/std/thread: Same. * include/bits/shared_ptr_base.h: Same. * libsupc++/nested_exception.cc: New. Add dtor for nested_exception. * libsupc++/nested_exception.h: Adjust. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same. * config/abi/pre/gnu.ver: Add new exports. 2011-03-14 Benjamin Kosnik * include/bits/regex_compiler.h: Nest namespace versioning. * include/bits/regex_grep_matcher.tcc: Same. * include/bits/regex_grep_matcher.h: Same. * include/bits/regex_cursor.h: Same. * include/bits/regex_nfa.h: Same. * include/bits/regex_nfa.tcc: Same. * include/bits/regex_grep_matcher.h: Version forward declarations. * include/bits/c++config: Add namespace association for __regex. * include/bits/regex.h: Make sub_match consistent. 2011-03-14 Rainer Orth * doc/xml/manual/abi.xml: Replace docs.sun.com URLs by their OTN equivalents. * doc/html/manual/abi.html: Regenerate. 2011-03-14 Tom Tromey * python/libstdcxx/v6/printers.py (_use_gdb_pp): New global. Try to import `gdb.printing' module. (UniquePointerPrinter.__init__): Add 'typename' argument. (StdSlistPrinter.__init__): Likewise. (StdSlistIteratorPrinter.__init__): Likewise. (StdVectorIteratorPrinter.__init__): Likewise. (StdRbtreeIteratorPrinter.__init__): Likewise. (StdDebugIteratorPrinter.__init__): Likewise. (StdDequeIteratorPrinter.__init__): Likewise. (StdStringPrinter.__init__): Likewise. (RxPrinter, Printer): New class. (libstdcxx_printer): New global. (register_libstdcxx_printers): Rewrite. (build_libstdcxx_dictionary): Rewrite. (pretty_printers_dict): Remove. 2011-03-14 Andrey Zholos PR libstdc++/48114 * include/bits/random.h (geometric_distribution): Correct formula in comment, per C++0x. (geometric_distribution<>::param_type::param_type(double)): Fix check. (geometric_distribution<>::param_type::_M_initialize): Store log(1 - p). * include/bits/random.tcc (geometric_distribution<>::operator()): Fix computation. (binomial_distribution<>::operator()): Likewise. 2011-03-09 Paolo Carlini * testsuite/util/testsuite_rvalref.h: Minor tweaks. 2011-03-09 Jonathan Wakely Chris Jefferson Paolo Carlini * testsuite/util/testsuite_rvalref.h (rvalstruct_compare_by_value): New. * testsuite/25_algorithms/sort_heap/check_compare_by_value.cc: Likewise. * testsuite/25_algorithms/partial_sort/check_compare_by_value: Likewise. * testsuite/25_algorithms/stable_sort/check_compare_by_value.cc: Likewise. * testsuite/25_algorithms/sort/check_compare_by_value: Likewise. 2011-03-09 Chris Jefferson PR libstdc++/48038 * include/bits/stl_algo.h (__merge_backward): Rename to __move_merge_backward and change to always move rather than copy. (__move_merge): New function similar to std::merge except values are moved instead of copied. (__merge_adaptive, __merge_sort_loop): Change from using std::merge and __merge_backward to __move_merge and __move_merge_backward. 2011-03-07 Jason Merrill * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust expected errors. 2011-03-07 Benjamin Kosnik Matthias Klose Jonathan Wakely PR libstdc++/47145 * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Define. * configure.ac: Use it. * doc/Makefile.am (XSL_STYLE_DIR): Set at configure time. * configure: Regenerate. * doc/Makefile.in: Regenerate. 2011-03-04 Benjamin Kosnik * src/Makefile.am (inst_sources): Make source instantion files conditional. (XTEMPLATE_FLAGS): Make -fno-implicit-templates conditional. * src/Makefile.in: Regenerate. * src/valarray-inst.cc: Move to.. * src/valarray.cc: ...this. * acinclude.m4 (GLIBCXX_ENABLE_EXTERN_TEMPLATE]): Define. * configure.ac (GLIBCXX_ENABLE_EXTERN_TEMPLATE): Use it. * configure: Regenerate. * include/Makefile.am (stamp-extern-template): Add. * include/Makefile.in: Regenerate. * doc/xml/manual/configure.xml: Document --enable-extern-template. * include/bits/locale_classes.tcc: Adjust comment. * include/bits/locale_facets.tcc: Same. * include/bits/basic_ios.tcc: Same. * include/bits/istream.tcc: Same. * include/bits/codecvt.h: Same. * include/bits/ostream.tcc: Same. * include/bits/sstream.tcc: Same. * include/bits/c++config: Same. * include/bits/basic_string.tcc: Same. * include/bits/ostream_insert.h: Same. * include/bits/locale_facets_nonio.tcc: Same. * include/bits/streambuf.tcc: Same. * include/bits/allocator.h: Same. * include/bits/fstream.tcc: Same. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers. 2011-03-02 Benjamin Kosnik * testsuite/Makefile.am: Make clean fixups. * testsuite/Makefile.in: Regenerate. 2011-03-02 Marc Glisse * include/std/ratio (ratio_less): Add comments. 2011-03-02 Marc Glisse PR libstdc++/47913 * include/std/ratio (ratio_add): Avoid denominator overflow. * testsuite/20_util/ratio/operations/47913.cc: New. 2011-02-28 Benjamin Kosnik * testsuite/20_util/hash/chi2_quality.cc: Use C++0x mode on simulators. * testsuite/20_util/hash/quality.cc: Same. 2011-02-28 Paolo Carlini PR libstdc++/47921 * include/std/streambuf (basic_streambuf<>::__safe_gbump, __safe_pbump): Add. * include/bits/streambuf.tcc (basic_streambuf<>::xgetn, xputn): Use the latter. * include/bits/streambuf_iterator.h: Likewise. * src/strstream.cc: Likewise. * src/streambuf.cc: Likewise. * src/compatibility.cc: Likewise. * src/istream.cc: Likewise. * include/bits/fstream.tcc (basic_filebuf<>::xsgetn): Use setg instead of gbump. * include/std/sstream (basic_stringbuf<>::_M_pbump): Add. * include/bits/sstream.tcc (basic_stringbuf<>::seekoff, seekpos, _M_sync): Use setg, setp, and _M_pbump. * config/abi/pre/gnu.ver: Tweak. 2011-02-28 Paolo Carlini * testsuite/20_util/ratio/comparisons/comp3.cc: New. 2011-02-28 Marc Glisse PR libstdc++/42622 * include/std/ratio (ratio_less): Reimplement to never overflow. * testsuite/20_util/ratio/comparisons/comp2.cc: Extend. 2011-02-24 Benjamin Kosnik * testsuite/18_support/type_info/fundamental.cc: New. * testsuite/Makefile.am: Make clean fixups. * testsuite/Makefile.in: Regenerate. 2011-02-19 François Dumont * include/debug/string (basic_string::insert): Add iterator check and pass normal iterator to normal insert. * include/debug/macros.h (__glibcxx_check_heap, __glibcxx_check_heap_pred): Remove __glibcxx_check_valid_range, already done. 2011-02-17 Paolo Carlini PR libstdc++/47776 * testsuite/ext/vstring/hash/char/1.cc: Fix. * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise. 2011-02-17 Jonathan Wakely * include/bits/regex.h (basic_regex::traits_type): Add typedef. (basic_regex::basic_regex(basic_regex&&)): Add noexcept. (basic_regex::operator=(basic_regex&&)): Likewise. (basic_regex::assign(basic_regex&&)): Likewise. (operator==(sub_match,...)): Implement DR 1181. (match_results::match_results(match_results&&)): Define. (match_results::operator=(const match_results&)): Fix parameter type. (match_results::operator=(match_results&&)): Define. 2011-02-17 Jonathan Wakely PR libstdc++/47724 * include/bits/regex_compiler.h (_Scanner::_M_advance): Do not treat line anchors as metacharacters. * testsuite/28_regex/basic_regex/ctors/47724.cc: New. 2011-02-16 Paolo Carlini PR libstdc++/47773 * include/ext/vstring.h (hash<__gnu_cxx::__vstring>, hash<__gnu_cxx::__wvstring>, hash<__gnu_cxx::__u16vstring>, hash<__gnu_cxx::__u32vstring>): Add. * testsuite/ext/vstring/hash/char/1.cc: New. * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise. 2011-02-16 Jonathan Wakely * include/bits/regex.h (match_results::format): Use char_traits. 2011-02-16 Benjamin Kosnik * include/std/atomic: Remove atomic_address, uplift to N3225. * include/bits/atomic_0.h: Same. * include/bits/atomic_2.h: Same. * include/bits/atomic_base.h: Same. * testsuite/29_atomics/atomic_address/*: Delete. 2011-02-14 Jonathan Wakely * include/bits/regex.h (sub_match::sub_match): Add. (match_results::ready): Add. (match_results::empty): Adjust. (match_results::length): Add missing dereference. (match_results::operator[],prefix,suffix): Add debug mode checks. (match_results::cend): Re-use end(). (match_results::format): Adjust signatures. (operator==(match_results,match_results)): Implement. * include/bits/regex_compiler.h (_Scanner_base): Use constexpr. * include/bits/regex_constants.h (syntax_option_type): Likewise. * include/bits/regex_grep_matcher.h: Fix comment typo. (_SpecializedResults::_SpecializedResults): Simplify. * include/bits/regex_cursor.h: Fix comment typo. * include/bits/regex_nfa.h: Likewise. * testsuite/28_regex/basic_regex/ctors/basic/string_range_01_02_03.cc: Fix error code, remove xfail. * testsuite/28_regex/basic_regex/ctors/extended/ string_range_01_02_03.cc: Likewise. 2011-02-14 Jonathan Wakely * include/bits/regex_compiler.h: Remove unnecessary bind() calls. * include/bits/regex_nfa.h: Remove unnecessary base classes. 2011-02-13 Ralf Wildenhues * configure: Regenerate. 2011-02-12 Paolo Carlini PR libstdc++/47709 * include/ext/algorithm (is_heap): In C++0x mode import from namespace std. * testsuite/ext/is_heap/47709.cc: New. 2011-02-12 Jakub Jelinek Jonathan Wakely PR libstdc++/47662 * testsuite/17_intro/headers/c++200x/operator_names.cc: New. * testsuite/17_intro/headers/c++1998/operator_names.cc: Add comment. 2011-02-12 Paolo Carlini * include/tr1/cmath (fabs): Define. * include/tr1/complex (acos, asin, atan): Avoid duplicate definitions in C++0x mode. 2011-02-12 Jonathan Wakely * testsuite/tr1/headers/c++200x/complex.cc: New. 2011-02-11 Johannes Singler PR libstdc++/47433 * include/parallel/losertree.h (_LoserTreeUnguarded<>::__delete_min_insert): Add missing "using std::swap;", as for other variants. 2011-02-10 Benjamin Kosnik * src/Makefile.am (sources): Add regex.cc. * src/Makefile.in: Regenerate. * src/regex.cc: New. * include/bits/regex_error.h (error_type): Use constexpr. (regex_error): Move ctor and dtor out of line. * testsuite/28_regex/03_requirements: To... * testsuite/28_regex/requirements: ... this. * testsuite/28_regex/04_header: To... * testsuite/28_regex/headers: ... this. * testsuite/28_regex/05_constants: To... * testsuite/28_regex/constants: ... this. * testsuite/28_regex/06_exception_type: To... * testsuite/28_regex/regex_error: ... this. * testsuite/28_regex/07_traits: To... * testsuite/28_regex/traits: ... this. * testsuite/28_regex/08_basic_regex: To... * testsuite/28_regex/basic_regex: ... this. * testsuite/28_regex/09_sub_match: To... * testsuite/28_regex/sub_match: ... this. * testsuite/28_regex/10_match_results: To... * testsuite/28_regex/match_results: ... this. * testsuite/28_regex/11_algorithms: To... * testsuite/28_regex/algorithms: ... this. * testsuite/28_regex/12_iterators: To... * testsuite/28_regex/iterators: ... this. 2011-02-10 Jonathan Wakely PR libstdc++/47662 * include/bits/c++config: Do not use alternative token. * testsuite/17_intro/headers/c++1998/operator_names.cc: New. 2011-02-10 Jonathan Wakely * src/future.cc (future_error_category::message): Handle no_state. 2011-02-10 Paolo Carlini * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Do not test in C++0x mode. * testsuite/23_containers/map/modifiers/erase/47628.cc: Likewise. * testsuite/20_util/headers/utility/synopsis.cc: Tweak to work in C++0x mode too. 2011-02-10 Jonathan Wakely * doc/xml/manual/status_cxx200x.xml: Update. * doc/html/*: Regenerate. 2011-02-10 Jonathan Wakely * doc/xml/manual/debug.xml: Improve data race docs. 2011-02-09 Paolo Carlini PR libstdc++/47668 * include/debug/map.h (map): Remove unnecessary using-declaration. * include/debug/multimap.h (multimap): Likewise. * include/profile/map.h (map): Likewise. * include/profile/multimap.h (multimap): Likewise. 2011-02-09 Jonathan Wakely PR libstdc++/43863 * libsupc++/guard.cc (recursive_init_error::~recursive_init_error): Move to ... * libsupc++/guard_error.cc: ... new file. * libsupc++/Makefile.am: Update. * libsupc++/Makefile.in: Regenerate. 2011-02-09 Jonathan Wakely * include/std/future (packaged_task::operator bool): Rename to... (packaged_task::valid): ...this. * testsuite/30_threads/packaged_task/cons/1.cc: Adjust. * testsuite/30_threads/packaged_task/cons/2.cc: Adjust. * testsuite/30_threads/packaged_task/cons/move.cc: Adjust. * testsuite/30_threads/packaged_task/cons/move_assign.cc: Adjust. * testsuite/30_threads/packaged_task/cons/alloc.cc: Adjust. * testsuite/30_threads/packaged_task/members/invoke.cc: Adjust. * testsuite/30_threads/packaged_task/members/reset.cc: Adjust. * testsuite/30_threads/packaged_task/members/reset2.cc: Adjust. * testsuite/30_threads/packaged_task/members/swap.cc: Adjust. * testsuite/30_threads/packaged_task/members/boolconv.cc: Remove. * testsuite/30_threads/packaged_task/members/valid.cc: Add. 2011-02-09 Paolo Carlini * doc/xml/manual/io.xml: Fix typo. * doc/html/manual/streambufs.html: Likewise. 2011-02-09 Paolo Carlini * config/abi/pre/gnu.ver: Fix. 2011-02-08 Benjamin Kosnik * doc/xml/manual/appendix_porting.xml: Add doc section. * doc/xml/manual/appendix_contributing.xml: Split out doc bits to... * doc/xml/manual/documentation_hacking.xml: ...here. * doc/xml/manual/debug_mode.xml: Adjust. * doc/xml/manual/prerequisites.xml: Adjust. * doc/Makefile.am (xml_sources): Add dot files, documentation_hacking.xml. * doc/Makefile.in: Regenerate. * doc/xml/manual/build_hacking.xml: Use absolute paths for images. * doc/xml/images/confdeps.pdf: Add. * doc/html/*: Regenerate. 2011-02-08 Jonathan Wakely * doc/xml/gnu/fdl-1.2.xml: Remove. * doc/xml/gnu/gpl-2.0.xml: Remove. * doc/Makefile.am: Update. * doc/Makefile.in: Regenerate. 2011-02-07 Paolo Carlini PR libstdc++/47628 * include/bits/stl_tree.h (_Rb_tree::erase(iterator), erase(iterator, iterator)): Add back in C++03 mode. * testsuite/23_containers/map/modifiers/erase/47628.cc: New. * testsuite/23_containers/multimap/modifiers/erase/47628.cc: Likewise. 2011-02-07 Benjamin Kosnik PR libstdc++/47560 try two * config/os/hpux/os_defines.h: Guard for C++. 2011-02-07 Gerald Pfeifer * doc/xml/faq.xml: Adjust link to bug database. Remove old item on broken header files. 2011-02-04 Benjamin Kosnik * include/bits/regex_error.h (__throw_regex_error): Not inline. * src/functexcept.cc: Add definition. * config/abi/pre/gnu.ver: Export. 2011-02-04 Ralf Corsépius * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Add *-rtems*. * configure: Regenerate. 2011-02-01 Paolo Carlini PR libstdc++/46914 * include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_, _ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to avoid name conflicts. 2011-02-01 Benjamin Kosnik PR libstdc++/47560 * config/os/hpux/os_defines.h: Remove use of macros on namespace. 2011-02-01 Benjamin Kosnik * scripts/run_doxygen: Allow doxygen 1.7.0 again. * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): Re-enable. (COMPACT_LATEX): Enable. * include/profile/impl/profiler_container_size.h: Adjust doxygen markup. * include/profile/impl/profiler_hash_func.h: Same. * include/bits/hashtable.h: Same. * include/backward/auto_ptr.h: Same. * include/backward/strstream: Same. * include/backward/backward_warning.h: Same. * include/backward/binders.h: Same. 2011-02-01 Gerald Pfeifer * doc/xml/manual/debug.xml: Use GDB instead of gdb. Adjust link to GDB manual. 2011-01-31 Benjamin Kosnik * include/bits/c++config (_GLIBCXX_DEPRECATED): To _GLIBCXX_USE_DEPRECATED. (_GLIBCXX_DEPRECATED_ATTR): To _GLIBCXX_DEPRECATED. * doc/xml/manual/using.xml: Same. * include/std/memory: Same. * include/std/streambuf: Same. * include/bits/shared_ptr.h: Same. * include/bits/unique_ptr.h: Same. * include/bits/shared_ptr_base.h: Same. * include/bits/stl_function.h: Same. * include/tr1/shared_ptr.h: Same. * include/backward/auto_ptr.h: Same. * include/backward/binders.h: Same. 2011-01-31 Paolo Carlini * doc/html/ext/lwg-active.html: Update to Revision D73. * doc/html/ext/lwg-closed.html: Likewise. * doc/html/ext/lwg-defects.html: Likewise. * doc/xml/manual/intro.xml: Update status of issues 408, 539, 865. 2011-01-30 Benjamin Kosnik PR libstdc++/36104 part four * include/bits/c++config (_GLIBCXX_STD): Remove. (_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C. (_GLIBCXX_P): Now _GLIBCXX_STD_A. (_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL, _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove. (_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL, _GLIBCXX_INLINE_PROFILE): Remove. (_GLIBCXX_BEGIN_NAMESPACE(X)): Remove. (_GLIBCXX_END_NAMESPACE): Remove. (_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove. (_GLIBCXX_END_NESTED_NAMESPACE): Remove. (_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add. (_GLIBCXX_END_NAMESPACE_ALGO): Add. (_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add. (_GLIBCXX_END_NAMESPACE_CONTAINER): Add. (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add. (_GLIBCXX_END_NAMESPACE_VERSION): Add. (_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL. (_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL. (_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY. * include/*: Use new macros for namespace scope. * config/*: Same. * src/*: Same. * src/Makefile.am (sources): Remove debug_list.cc, add compatibility-debug_list-2.cc. (parallel_sources): Remove parallel_list.cc, add compatibility-parallel_list-2.cc. (compatibility-parallel_list-2.[o,lo]): New rule. * src/Makefile.in: Regenerate. * src/debug_list.cc: Remove. * src/parallel_list.cc: Remove. * src/compatibility-list-2.cc: New. * src/compatibility-debug_list-2.cc: New. * src/compatibility-parallel_list-2.cc: New. * doc/doxygen/user.cfg.in: Adjust macros. * testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros. * testsuite/20_util/declval/requirements/1_neg.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same. * testsuite/20_util/forward/c_neg.cc: Same. * testsuite/20_util/forward/f_neg.cc: Same. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same. * testsuite/23_containers/forward_list/capacity/1.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ assign_neg.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/forward_list/requirements/dr438/ insert_neg.cc: Same. * testsuite/23_containers/list/capacity/29134.cc: Same. * testsuite/23_containers/list/requirements/dr438/assign_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. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same. * testsuite/23_containers/vector/bool/capacity/29134.cc: Same. * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Same. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Same. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same. * testsuite/25_algorithms/sort/35588.cc: Same. * testsuite/27_io/ios_base/cons/assign_neg.cc: Same. * testsuite/27_io/ios_base/cons/copy_neg.cc: Same. * testsuite/ext/profile/mutex_extensions_neg.cc: Same. * testsuite/ext/profile/profiler_algos.cc: Same. * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same. * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same. * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same. * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same. * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same. 2011-01-30 Gerald Pfeifer * doc/xml/manual/abi.xml: Adjust link to C++ ABI specification. Improve description of one such reference. 2011-01-30 Gerald Pfeifer * doc/xml/manual/codecvt.xml: Fix link to The Austin Common Standards Revision Group. * doc/xml/manual/locale.xml: Ditto. * doc/xml/manual/messages.xml: Ditto. * doc/xml/manual/using_exceptions.xml: Ditto. 2011-01-28 Paolo Carlini * include/bits/atomic_base.h: Do not include . (kill_dependency): Uglify ret. 2011-01-26 Johannes Singler * include/parallel/numeric (inner_product, partial_sum): Qualify subsequent call with __gnu_parallel instead of _GLIBCXX_STD_P to reenable parallel execution without ambiguity. * include/parallel/algobase.h (equal): Likewise. * include/parallel/algo.h (find_first_of, search_n, merge, nth_element, partial_sort, max_element, min_element): Likewise. * testsuite/25_algorithms/headers/algorithm/ parallel_algorithm_mixed1.cc (main): Add respective test cases. * testsuite/25_algorithms/headers/algorithm/ parallel_algorithm_mixed2.cc (main): Likewise. * testsuite/26_numerics/headers/numeric/ parallel_numeric_mixed1.cc (main): Likewise. * testsuite/26_numerics/headers/numeric/ parallel_numeric_mixed2.cc (main): Likewise. 2011-01-24 Graham Reed PR libstdc++/47387 * config/os/aix/ctype_inline.h (ctype::is): Use _M_table if provided. 2011-01-24 Johannes Singler PR libstdc++/47433 * include/parallel/losertree.h (_LoserTree<>::__delete_min_insert): Do not qualify swap with std:: for value type, but include a using directive instead. (_LoserTreeUnguarded<>::__delete_min_insert): Likewise. * include/parallel/balanced_quicksort.h (__qsb_divide): Use std::iter_swap instead of std::swap. (__qsb_local_sort_with_helping): Likewise. * include/parallel/partition.h (__parallel_partition): Likewise. (__parallel_nth_element): Likewise. 2011-01-24 Johannes Singler PR libstdc++/47437 * include/parallel/multiway_merge.h (_UnguardedIterator): Remove useless "mutable" from reference declaration. 2011-01-21 Benjamin Kosnik * include/bits/c++config (_GLIBCXX_EXPORT_TEMPLATE): Remove. * include/debug/safe_sequence.h: Same. * include/debug/safe_iterator.h: Same. * include/std/forward_list: Same. * include/std/deque: Same. * include/std/list: Same. * include/std/random: Same. * include/std/streambuf: Same. * include/std/fstream: Same. * include/std/istream: Same. * include/std/string: Same. * include/std/ostream: Same. * include/std/sstream: Same. * include/ext/vstring.h: Same. * include/bits/basic_ios.h: Same. * include/bits/locale_classes.h: Same. * include/bits/locale_facets.h: Same. * include/bits/valarray_array.h: Same. * include/bits/locale_facets_nonio.h: Same. * include/tr1/random: Same. 2011-01-20 Jonathan Wakely * doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts. 2011-01-20 Benjamin Kosnik PR libstdc++/36104 part three * src/hashtable_c++0x.cc: Adjust namespace macros. * testsuite/util/testsuite_rvalref.h: Don't forward declare hash. * config/abi/pre/gnu-versioned-namespace.ver: Update. 2011-01-20 Benjamin Kosnik * include/ext/pb_ds/detail/resize_policy/ hash_load_check_resize_trigger_imp.hpp: Adjust assert condition. * include/ext/pb_ds/detail/pat_trie_/ constructors_destructor_fn_imps.hpp: Same. * include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format. * include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same. * include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor. * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust iterations downward when testing in debug mode. * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same. * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same. * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same. * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same. * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same. * testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE, reduce in debug mode. 2011-01-19 Benjamin Kosnik PR libstdc++/36104 part two * include/bits/hashtable.h: Revert to non-nested macro usage. * include/bits/hashtable_policy.h: Same. 2011-01-19 Graham Reed PR libstdc++/47354 * src/bitmap_allocator.cc (free_list::_M_get): Lock mutex. 2011-01-18 Benjamin Kosnik * doc/xml/images/confdeps.png: Regenerate. * include/std/chrono (duration): Mark copy constructor constexpr. * testsuite/20_util/duration/cons/constexpr.cc: Add test. 2011-01-18 Paolo Carlini * include/bits/unique_ptr.h (default_delete<>::default_delete()): Declare defaulted per DR 1517. * testsuite/util/testsuite_common_types.h (constexpr_defaulted_default_constructible): Add. * testsuite/20_util/default_delete/cons/constexpr.cc: Use it. 2011-01-17 Paolo Carlini * include/bits/stl_queue.h (queue<>::swap, priority_queue<>::swap): Implement DR 1198. * include/bits/stl_stack.h (stack<>::swap): Likewise. 2011-01-16 Paolo Carlini PR libstdc++/47323 * testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc: Only test wregex when _GLIBCXX_USE_WCHAR_T is defined. 2011-01-16 Paolo Carlini PR libstdc++/47320 * testsuite/18_support/numeric_limits/lowest.cc: Only test wchar_t when _GLIBCXX_USE_WCHAR_T is defined. 2011-01-16 Paolo Carlini PR libstdc++/47321 * testsuite/21_strings/basic_string/requirements/typedefs.cc: Only test std::wstring when _GLIBCXX_USE_WCHAR_T is defined. 2011-01-16 François Dumont * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc: Move to this. Use _neg suffix. * testsuite/23_containers/forward_list/debug/erase_after1.cc: ...from this. * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after2.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after3.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after4.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after5.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after6.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after7.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after8.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc: Same. * testsuite/23_containers/forward_list/debug/erase_after9.cc: Same. * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc: Same. * testsuite/23_containers/forward_list/debug/insert_after1.cc: Same. * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc: Same. * testsuite/23_containers/forward_list/debug/insert_after2.cc: Same. * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc: Same. * testsuite/23_containers/forward_list/debug/insert_after3.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after1.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after2.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after3.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc: Same. * testsuite/23_containers/forward_list/debug/splice_after4.cc: Same. 2011-01-14 Benjamin Kosnik PR libstdc++/36104 * include/Makefile.am (bits_sup_headers, stamp-bits-sup): New. * include/Makefile.in: Regenerate. * libsupc++/Makefile.am (std_HEADERS, bits_HEADERS): New. (install-stdHEADERS, install-bitsHEADERS): New. * libsupc++/Makefile.in: Regenerate. * include/bits/c++config: Update for inline namespaces. * libsupc++/cxxabi-forced.h: To... * libsupc++/cxxabi_forced.h: ...this. * libsupc++/hash_bytes.h: Separate file. * libsupc++/typeinfo: Use it. * libsupc++/exception: Adjust for bits subdirectory. * libsupc++/eh_aux_runtime.cc: Same. * libsupc++/eh_ptr.cc: Same. * libsupc++/new_op.cc: Same. * libsupc++/exception_defines.h: Same. * libsupc++/nested_exception.h: Same. * libsupc++/eh_terminate.cc: Same. * libsupc++/vec.cc: Same. * libsupc++/vterminate.cc: Same. * libsupc++/exception_ptr.h: Same. * libsupc++/eh_personality.cc: Same. * libsupc++/eh_call.cc: Same. * libsupc++/new_opnt.cc: Same. * libsupc++/hash_bytes.cc: Same. * config/cpu/arm/cxxabi_tweaks.h: Same. * config/cpu/generic/cxxabi_tweaks.h: Same. * libsupc++/cxxabi.h: Same. Consolidate _GLIBCXX_NOTHROW defines. * include/std/bitset: Same. * include/ext/vstring.tcc: Same. * include/bits/hashtable.h: Same. * include/bits/functional_hash.h: Same. * include/bits/hashtable_policy.h: Same. * include/bits/basic_string.h: Same. * include/bits/istream.tcc: Same. * include/bits/ostream.tcc: Same. * include/bits/algorithmfwd.h: Same. * include/bits/basic_string.tcc: Same. * include/bits/ostream_insert.h: Same. * include/bits/fstream.tcc: Same. * include/bits/functexcept.h: Same. * doc/doxygen/user.cfg.in: Adjust names. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers. 2011-01-14 Paolo Carlini * testsuite/25_algorithms/is_permutation/check_type.cc: Minor tweaks. * testsuite/25_algorithms/is_permutation/1.cc: Cosmetic changes. 2011-01-13 Paolo Carlini * testsuite/25_algorithms/is_permutation/check_type.cc: New. * testsuite/25_algorithms/is_permutation/requirements/ explicit_instantiation/2.cc: Likewise. * testsuite/25_algorithms/is_permutation/requirements/ explicit_instantiation/pod.cc: Likewise. * testsuite/25_algorithms/is_permutation/1.cc: Likewise. 2011-01-13 John Lakos Pablo Halpern Paolo Carlini * include/bits/stl_algo.h (is_permutation): Add, per N3068. * include/bits/algorithmfwd.h: Add. 2011-01-13 Jonathan Wakely PR libstdc++/47045 * config/os/bsd/netbsd/ctype_base.h: Use new macros based on version. 2011-01-11 Paolo Carlini * aclocal.m4: Regenerate. 2011-01-06 Paolo Carlini PR libstdc++/47185 * src/placeholders.cc: New. * src/Makefile.am: Adjust. * src/Makefile.in: Regenerate. * include/std/functional (placeholders::_1, _2, ..., _29): Declare extern. * config/abi/pre/gnu.ver: Export. 2011-01-05 François Dumont * include/debug/safe_base.h (_Safe_iterator_base::_M_unlink): New. * include/src/debug.cc: Use latter * include/debug/forward_list (forward_list<>::_M_swap): Fix to correctly handle before_begin iterators. * testsuite/23_containers/forward_list/debug/swap.cc: Remove now useless _GLIBCXX_DEBUG checks. 2011-01-04 Kai Tietz PR libstdc++/47145 * configure.ac (AC_CHECK_FILE): Replaced by test -f. * configure: Regenerated. 2011-01-03 Paolo Carlini PR libstdc++/46922 * config/abi/pre/gnu.ver: Export std::bad_function_call symbols. Copyright (C) 2011 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.