2012-09-11 Jakub Jelinek PR libstdc++/54172 * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last argument of the first __atomic_compare_exchange_n. 2012-09-10 Sebastian Huber Jonathan Wakely PR libstdc++/43852 * acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define. * configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it. * config.h.in: Regenerate. * configure: Likewise. * libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro. * libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise. * doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document. * doc/html/manual/configure.html: Regenerate. 2012-09-09 Jonathan Wakely PR bootstrap/54419 * acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character. * configure: Regenerated. 2012-09-09 Jonathan Wakely PR libstdc++/54388 * include/std/array (array::at() const): Ensure lvalue result. * testsuite/23_containers/array/element_access/54388.cc: New. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust dg-error line numbers. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise. 2012-09-09 Ulrich Drepper Dominique d'Humieres Jack Howarth PR bootstrap/54419 * acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND. * configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand support in assembler. * src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND. (random_device::_M_init): Likewise. (random_device::_M_getval): Likewise. * configure: Regenerated. * config.h.in: Regenerated. 2012-09-09 Ulrich Drepper * src/c++11/random.cc (random_device::_M_init): Use new macro signature_INTEL_ebx to check for Intel processors. 2012-09-06 Thiago Macieira PR libstdc++/54172 * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if we detect that another thread has had success. Don't compare_exchange from a finished state back to a waiting state. Comment. 2012-09-05 François Dumont PR libstdc++/54296 * include/bits/hashtable.h (_M_erase(size_type, __node_base*, __node_type*)): New. (erase(const_iterator)): Use latter. (_M_erase(std::true_type, const key_type&)): New, likewise. (_M_erase(std::false_type, const key_type&)): New. Find all nodes matching the key before deallocating them so that the key doesn't get invalidated. (erase(const key_type&)): Use the new member functions. * testsuite/23_containers/unordered_map/erase/54296.cc: New. * testsuite/23_containers/unordered_multimap/erase/54296.cc: New. 2012-09-05 Ulrich Drepper * src/c++11/random.cc (random_device::_M_init): Check whether cpuid instruction is available by using __get_cpuid_max. * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>) (operator()): Use __generate() function of _M_nd. * include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class. * include/ext/random.tccAdd out-of-line functions for __gnu_cxx::normal_mv_distribution<>. * testsuite/26_numerics/random/normal_mv_distribution/ operators/equal.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ operators/serialize.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ operators/inequal.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ cons/default.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ cons/parms.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ requirements/explicit_instantiation/1.cc: New file. * testsuite/26_numerics/random/normal_mv_distribution/ requirements/typedefs.cc: New file. 2012-09-04 Ulrich Drepper * include/ext/random: Add __gnu_cxx::beta_distribution<> class. * include/ext/random.tcc: Add out-of-line functions for __gnu_cxx::beta_distribution<>. * testsuite/26_numerics/random/beta_distribution/ operators/equal.cc: New file. * testsuite/26_numerics/random/beta_distribution/ operators/serialize.cc: New file. * testsuite/26_numerics/random/beta_distribution/ operators/inequal.cc: New file. * testsuite/26_numerics/random/beta_distribution/ cons/parms.cc: New file. * testsuite/26_numerics/random/beta_distribution/ cons/default.cc: New file. * testsuite/26_numerics/random/beta_distribution/ requirements/typedefs.cc: New file. * testsuite/26_numerics/random/beta_distribution/ requirements/explicit_instantiation/1.cc: New file. 2012-09-04 Steven Bosscher PR bootstrap/54453 * include/Makefile.am: Fix regex. * include/Makefile.in: Regenerate. 2012-08-30 Benjamin Kosnik PR libstdc++/54005 continued * include/std/atomic: Use __atomic_lock_free with NULL. * include/bits/atomic_base.h: Same. 2012-08-30 Ulrich Drepper * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]: Remove 'return' from constructor. 2012-08-30 Benjamin Kosnik * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18. 2012-08-29 Ulrich Drepper * include/bits/random.h (random_device): Move implementation to... * src/c++11/random.cc: ...here. New file. * config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18. Export std::random_device::* symbols. * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated. * src/c++11/Makefile.am (sources): Add random.cc. * src/c++11/Makefile.in: Regenerated. Add simd_fast_mersenne_twister_engine class. * include/ext/random: New file. * include/ext/random.tcc: New file. * include/Makefile.am (ext_headers): Add random and random.tcc. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ operators/inequal.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ operators/equal.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ operators/serialize.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/seed2.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/default.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/seed_seq.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/copy.cc: New file. * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/ cons/seed1.cc: New file. 2012-08-28 Benjamin Kosnik PR libstdc++/54102, part 2 * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html. * doc/Makefile.in: Regenerate. * doc/html/*: Same. 2012-08-28 Benjamin Kosnik * doc/html/*: Regenerate. 2012-08-28 Benjamin Kosnik PR libstdc++/54102 * doc/xsl/customization.xsl.in: New. * configure.ac: Output local copy of customization xsl. * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE. (stamp-html-docbook): Set stringparam to UTF-8. * Makefile.in: Regenerated. * configure: Same. * doc/Makefile.in: Same. 2012-08-27 Ulrich Drepper Add interfaces to retrieve random numbers in bulk. * include/bits/random.h (uniform_int_distribution<>): Add __generate and __generate_impl functions. (uniform_real_distribution<>): Likewise. (bernoulli_distribution): Likewise. (geometric_distribution<>): Likewise. (negative_binomial_distribution<>): Likewise. (poisson_distribution<>): Likewise. (exponential_distribution<>): Likewise. (normal_distribution<>): Likewise. (lognormal_distribution<>): Likewise. (chi_squared_distribution<>): Likewise. (cauchy_distribution<>): Likewise. (fisher_f_distribution<>): Likewise. (student_t_distribution<>): Likewise. (gamma_distribution<>): Likewise. (weibull_distribution<>): Likewise. (extreme_value_distribution<>): Likewise. (discrete_distribution<>): Likewise. (piecewise_constant_distribution<>): Likewise. (piecewise_linear_distribution<>): Likewise. * include/bits/random.tcc (__detail::_Power_of_2): New function. (uniform_int_distribution<>::__generate_impl): New function. (uniform_real_distribution<>::__generate_impl): New function. (bernoulli_distribution::__generate_impl): New function. (geometric_distribution<>::__generate_impl): New function. (negative_binomial_distribution<>::__generate_impl): New function. (poisson_distribution<>::__generate_impl): New function. (exponential_distribution<>::__generate_impl): New function. (normal_distribution<>::__generate_impl): New function. (lognormal_distribution<>::__generate_impl): New function. (chi_squared_distribution<>::__generate_impl): New function. (cauchy_distribution<>::__generate_impl): New function. (fisher_f_distribution<>::__generate_impl): New function. (student_t_distribution<>::__generate_impl): New function. (gamma_distribution<>::__generate_impl): New function. (weibull_distribution<>::__generate_impl): New function. (extreme_value_distribution<>::__generate_impl): New function. (discrete_distribution<>::__generate_impl): New function. (piecewise_constant_distribution<>::__generate_impl): New function. (piecewise_linear_distribution<>::__generate_impl): New function. 2012-08-22 Ulrich Drepper * include/bits/random.h (mersenne_twister_engine): Don't inline discard here. New member function _M_gen_rand. * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand): New function. Extracted from operator(). (mersenne_twister_engine<>::discard): New implementation which skips in large steps. (mersenne_twister_engine<>::operator()): Use _M_gen_rand. 2012-08-26 Marc Glisse Paolo Carlini PR libstdc++/54376 * include/bits/random.h (lognormal_distribution<>::operator==, gamma_distribution<>::operator==, chi_squared_distribution<>::operator==, fisher_f_distribution<>::operator==, student_t_distribution<>::operator==, binomial_distribution<>::operator==, negative_binomial_distribution<>::operator==, poisson_distribution<>::operator==): Change inline friend definition to non-template. * testsuite/26_numerics/random/binomial_distribution/requirements/ explicit_instantiation/1.cc: New. * testsuite/26_numerics/random/cauchy_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/chi_squared_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/discrete_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/fisher_f_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/gamma_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/geometric_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/lognormal_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/negative_binomial_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/piecewise_constant_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/piecewise_linear_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/poisson_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/requirements/ explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/uniform_int_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/uniform_real_distribution/ requirements/explicit_instantiation/1.cc: Likewise. * testsuite/26_numerics/random/weibull_distribution/requirements/ explicit_instantiation/1.cc: Likewise. 2012-08-26 Jonathan Wakely * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep. 2012-08-26 Jonathan Wakely PR libstdc++/54297 * src/c++11/future.cc (~_Async_state_common): Move to... * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common): Here. (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT. * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise. 2012-08-26 Jonathan Wakely Geoff Romer PR libstdc++/54351 * include/bits/unique_ptr.h (unique_ptr::~unique_ptr): Do not use reset(). (unique_ptr::~unique_ptr()): Likewise. * testsuite/20_util/unique_ptr/54351.cc: New. * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error line numbers. 2012-08-25 Jonathan Wakely PR libstdc++/54297 * include/std/future (~_Async_state_impl): Join thread before derived class members are destroyed. (~_Async_state_common): Only define non-trivial destructor when included from future.cc for ABI compatibility reasons. * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define. * testsuite/30_threads/async/54297.cc: New. 2012-08-25 Jonathan Wakely PR libstdc++/54248 * include/bits/concept_check.h: Replace references to boost namespace. 2012-08-23 Jonathan Wakely PR libstdc++/54354 * doc/xml/manual/status_cxx2011.xml: Note missing manipulators. * doc/html/*: Regenerate. 2012-08-15 Tom Tromey * testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum): New. (global): New global. (main): Add test for unique_ptr. * python/libstdcxx/v6/printers.py (UniquePointerPrinter.to_string): Extract the pointer and also print its type. 2012-08-13 David Adler PR libstdc++/54185 * src/c++11/condition_variable.cc (condition_variable): Always destroy native type in destructor. * testsuite/30_threads/condition_variable/54185.cc: New. 2012-08-13 François Dumont Ollie Wild * include/bits/hashtable.h (_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New. (_Hashtable<>_M_insert(_Args&&, false_type)): Use latter. (_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise. (_Hashtable<>::_M_insert_bucket): Replace by ... (_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)): ... this, new. (_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter. (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise. * include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use latter, emplace the value_type rather than insert. * include/std/unordered_map: Include tuple. * include/std/unordered_set: Likewise. * testsuite/util/testsuite_counter_type.h: New. * testsuite/23_containers/unordered_map/operators/2.cc: New. 2012-08-13 Marc Glisse PR libstdc++/54112 * include/c_compatibility/complex.h: Undefine complex, always include system's complex.h if present. * testsuite/26_numerics/complex/c99.cc: New testcase. * testsuite/17_intro/headers/c++1998/complex.cc: Likewise. * doc/xml/manual/numerics.xml: Document it. 2012-08-12 Jonathan Wakely PR libstdc++/52681 * src/c++11/thread.cc (thread::_M_start_thread): Improve error text when threads are not enabled. 2012-08-09 Jonathan Wakely * acinclude.m4: Update references to final C++11 standard. * include/bits/shared_ptr.h: Likewise. * include/bits/shared_ptr_base.h: Likewise. * include/bits/unique_ptr.h: Likewise. * include/std/chrono: Likewise. * include/std/thread: Likewise. 2012-08-07 Benjamin Kosnik PR libstdc++/54005 * include/std/atomic: Use __atomic_always_lock_free. * include/bits/atomic_base.h: Same. 2012-08-06 Paolo Carlini * testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor tweaks. * testsuite/decimal/unary-arith.cc: Likewise. * testsuite/decimal/ctor.cc: Likewise. * testsuite/decimal/conversion-to-integral.cc: Likewise. * testsuite/decimal/make-decimal.cc: Likewise. * testsuite/decimal/comparison.cc: Likewise. * testsuite/decimal/incdec-memfunc.cc: Likewise. * testsuite/decimal/conversion-to-generic-float.cc: Likewise. * testsuite/decimal/compound-assignment-memfunc.cc: Likewise. * testsuite/decimal/cast_neg.cc: Likewise. * testsuite/decimal/incdec.cc: Likewise. * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise. * testsuite/decimal/binary-arith.cc: Likewise. * testsuite/decimal/conversion-from-float.cc: Likewise. * testsuite/decimal/conversion-from-integral.cc: Likewise. * testsuite/decimal/compound-assignment.cc: Likewise. 2012-08-06 Peter Bergner PR libstdc++/54036 * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as a unary operator. * testsuite/decimal/pr54036-1.cc: New test. * testsuite/decimal/pr54036-2.cc: Likewise. * testsuite/decimal/pr54036-3.cc: Likewise. 2012-08-04 Paolo Carlini Revert: 2012-08-03 Ollie Wild Richard Smith * include/bits/stl_map.h (operator[](key_type&&)): Replace std::make_pair with value_type. * testsuite/23_containers/map/operators/2.cc: New test. 2012-08-03 François Dumont * include/debug/functions.h (__check_partition_lower_aux): Remove redundant comparison with pivot value. (__check_partition_upper_aux): Likewise. 2012-08-03 Ollie Wild Richard Smith * include/bits/stl_map.h (operator[](key_type&&)): Replace std::make_pair with value_type. * testsuite/23_containers/map/operators/2.cc: New test. 2012-08-03 Jonathan Wakely * include/std/memory: Include auto_ptr.h later. * include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove definition. * include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&): Likewise. * include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise. * include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define. (shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise. * include/std/future: Reduce header dependencies. * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise. * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise. 2012-07-30 François Dumont * include/bits/c++config (_GLIBCXX_END_NAMESPACE_CONTAINER): Fix order of closures. (_GLIBCXX_END_NAMESPACE_ALGO): Likewise. 2012-07-29 François Dumont PR libstdc++/54075 * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2 to boost growth in the number of buckets. * testsuite/performance/23_containers/insert/unordered_set.cc: New. 2012-07-25 François Dumont PR libstdc++/54075 * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator, size_type, ...): Remove std::max usage to guarantee that hashtable state is consistent with hash policy state. (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid the hashtable shrinking on next insertion. * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New. * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New. * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New. * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New. 2012-07-20 Chip Salzenberg Jonathan Wakely PR libstdc++/54025 * include/std/chrono (duration<>::duration): Fix per C++11. * testsuite/20_util/duration/cons/54025.cc: New. * testsuite/20_util/duration/cons/constexpr.cc: Adjust. 2012-07-20 Paolo Carlini * testsuite/30_threads/thread/adl.cc: Add missing dg-requires. 2012-07-19 Tristan Gingold Richard Henderson * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function. Adjust for SEH. * config/abi/pre/gnu.ver: Add __gxx_personality_seh0. 2012-07-18 Paolo Carlini PR c++/51213 * testsuite/20_util/pair/noncopyable.cc: New. 2012-07-16 Jonathan Wakely PR libstdc++/53270 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use NSDMI in C++98 mode too. * include/ext/rope: Add system_header pragma. (_Refcount_Base, _Rope_RopeRep): Use NSDMI. (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex. 2012-07-16 Jonathan Wakely PR libstdc++/53978 * include/bits/alloc_traits.h (allocator_traits): Define static constants. * include/bits/ptr_traits.h (pointer_traits): Likewise. * include/ext/alloc_traits.h (__allocator_always_compares_equal): Likewise. 2012-07-13 Paolo Carlini PR libstdc++/53657 * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted, per C++11. * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert (const_iterator, _Pair&&)): Constrain with std::is_constructible, per LWG2005. * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&), multimap<>::insert(const_iterator, _Pair&&)): Likewise. * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&), _Insert<>::insert(const_iterator, _Pair&&)): Likewise. * include/debug/unordered_map: Adjust. * include/debug/map.h: Likewise. * include/debug/multimap.h: Likewise. * include/profile/unordered_map: Likewise. * include/profile/map.h: Likewise. * include/profile/multimap.h: Likewise. 2012-07-06 Paolo Carlini PR libstdc++/53872 * include/std/thread (thread::_M_make_routine): Qualify make_shared to prevent ADL. * testsuite/30_threads/thread/adl.cc: New. 2012-07-05 Jonathan Wakely * include/std/condition_variable: Update copyright years. 2012-07-04 Jonathan Wakely PR libstdc++/53830 * include/std/condition_variable (condition_variable_any::wait): Move _Unlock type to class scope. (condition_variable_any::wait_until): Reuse it. * testsuite/30_threads/condition_variable_any/53830.cc: New. 2012-07-04 Matthias Klose * testsuite/28_regex/headers/04_header: Remove empty directory. * testsuite/28_regex/algorithms/02_match: Likewise. 2012-07-03 Paolo Carlini PR libstdc++/53840 * include/std/ratio (ratio_multiply, ratio_divide, ratio_add, ratio_subtract): Use template aliases. * include/std/chrono (duration<>::duration(const duration<>&), duration_cast): Adjust. * testsuite/20_util/ratio/operations/53840.cc: New. * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust. * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. 2012-07-02 Paolo Carlini Revert: 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. 2012-06-27 Benjamin Kosnik * include/bits/c++config: Remove __regex nested namespace. * include/bits/regex_compiler.h: Change __regex to __detail. Adjust doxygen markup, add regex-details group. * include/bits/regex_constants.h: Same. * include/bits/regex_cursor.h: Same. * include/bits/regex_error.h: Same. * include/bits/regex_grep_matcher.h: Same. * include/bits/regex_grep_matcher.tcc: Same. * include/bits/regex_nfa.h: Same. * include/bits/regex_nfa.tcc: Same. * include/bits/regex.h: Same. Remove static from global constants. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers. * include/bits/locale_classes.tcc: Add use_facet, has_facet to locales group. 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net> * include/tr2/bool_set (count, size, num_blocks, empty, max_size): Add noexcept. 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net> * include/tr2/dynamic_bitset (count, size, num_blocks, empty, max_size): Add noexcept. 2012-06-25 Benjamin Kosnik * doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO. 2012-06-24 Benjamin Kosnik * testsuite/28_regex/algorithms/02_match: To... * testsuite/28_regex/algorithms/match: ...this. * testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove duplicate. 2012-06-18 Jörg Sonnenberger Jonathan Wakely PR libstdc++/53678 * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U. * testsuite/22_locale/ctype_base/53678.cc: New. 2012-06-15 Jonathan Wakely PR libstdc++/53578 * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix narrowing conversion. * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise. 2012-06-14 Jonathan Wakely PR libstdc++/53270 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use NSDMI in C++11 mode. * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in destructor when initialized by function. 2012-06-14 Jonathan Wakely PR libstdc++/53648 * include/std/tuple (__empty_not_final): Do not use EBO for tuples. * testsuite/20_util/tuple/53648.cc: New. * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line number. 2012-06-14 Jonathan Wakely * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table. 2012-06-01 Jonathan Wakely * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table. 2012-05-31 Benjamin Kosnik PR libstdc++/53543 * include/bits/hashtable_policy.h (_Insert::__is_convertible): Rename to __is_conv to avoid clash with clang built-in. 2012-05-29 François Dumont * include/bits/stl_tempbuf.h (__uninitialized_construct_buf) (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work with iterator returning rvalue. * testsuite/25_algorithms/stable_sort/3.cc: New. 2012-05-28 Paolo Carlini PR c++/53503 * testsuite/26_numerics/headers/cmath/53503.cc: New. 2012-05-22 Dodji Seketeli PR c++/53322 * include/bits/stl_algobase.h (lower_bound) (lexicographical_compare): Do not declare unused local typedefs here when Concepts are turned off. 2012-05-21 Paolo Carlini * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings. * testsuite/29_atomics/atomic/cons/49445.cc: Likewise. * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: * Likewise. * testsuite/23_containers/unordered_map/observers.cc: Likewise. * testsuite/23_containers/unordered_map/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise. * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise. * testsuite/23_containers/unordered_multimap/observers.cc: Likewise. * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise. * testsuite/23_containers/unordered_set/observers.cc: Likewise. * testsuite/23_containers/unordered_set/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise. * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise. * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc: * Likewise. * testsuite/23_containers/unordered_multiset/observers.cc: Likewise. 2012-05-21 Paolo Carlini PR c++/53361 * testsuite/23_containers/array/cons/53361.cc: New. 2012-05-17 Paolo Carlini PR c++/44516 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust dg-error line number. 2012-05-16 H.J. Lu * configure: Regenerated. 2012-05-15 Paolo Carlini PR libstdc++/53339 * include/bits/hashtable_policy.h (__detail::_Identity, __detail::_Select1st): Add. (_Map_base, _Hashtable_base): Use the latter, adjust parameters. * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust. * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable): Likewise. * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable): Likewise. * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd) Unconditionally derive from unary_function. * include/ext/functional (identity, select1st, select2nd): Remove #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits. * testsuite/23_containers/unordered_map/requirements/53339.cc: New. * testsuite/23_containers/unordered_multimap/requirements/ 53339.cc: Likewise. 2012-05-11 François Dumont PR libstdc++/53263 * include/debug/safe_iterator.h (__gnu_debug::__base): Move... * include/debug/functions.h: ... Here. (__check_sorted_aux): Add overload for random access safe iterators. (__check_partition_lower_aux): New. (__check_partition_lower): Use latter. (__check_partition_upper_aux): New. (__check_partition_upper): Use latter. * include/debug/macros.h (__glibcxx_check_heap) (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range. 2012-05-10 DJ Delorie * include/bits/random.tcc (seed_seq::generate): Cast max() operands to size_t to ensure a template match. * include/std/bitset (_M_copy_from_ptr): Cast min() operands to size_t to ensure a template match. 2012-05-03 Benjamin Kosnik * scripts/testsuite_flags.in (cxxflags): Remove -ftrack-macro-expansion=0. 2012-05-03 Jonathan Wakely * doc/xml/faq.xml: Update outdated allocator documentation. * doc/xml/manual/allocator.xml: Likewise. * doc/xml/manual/debug.xml: Likewise. * doc/xml/manual/evolution.xml: Likewise. * doc/xml/manual/using.xml: Likewise. 2012-05-02 Benjamin Kosnik PR libstdc++/44015 * include/bits/basic_ios.h: Add tparam markup for * doxygen. include/bits/basic_string.h: Same. * include/bits/forward_list.h: Same. * include/bits/stl_bvector.h: Same. * include/bits/stl_deque.h: Same. * include/bits/stl_list.h: Same. include/bits/stl_map.h: * Same. include/bits/stl_multimap.h: Same. * include/bits/stl_multiset.h: Same. * include/bits/stl_pair.h: Same. * include/bits/stl_queue.h: Same. * include/bits/stl_set.h: Same. * include/bits/stl_stack.h: Same. * include/bits/stl_vector.h: Same. * include/bits/unordered_map.h: Same. * include/bits/unordered_set.h: Same. include/std/array: * Same. include/std/atomic: Same. include/std/fstream: * Same. include/std/istream: Same. include/std/ostream: * Same. include/std/sstream: Same. * include/std/streambuf: Same. * testsuite/23_containers/deque/requirements/dr438/*: Adjust line numbers. * testsuite/23_containers/list/requirements/dr438/*: Same. * testsuite/23_containers/vector/requirements/dr438/*: Same. 2012-05-02 DJ Delorie * crossconfig.m4: Since we know that all TPF builds are cross- builds and cannot run configuration-time link tests, do not allow it; just go with known supported linker options. * configure: Regenerate (called as GLIBCXX_CROSSCONFIG). 2012-05-02 Benjamin Kosnik * include/bits/hashtable_policy.h: Correct namepace nesting for _Hashtable forward declaration. 2012-05-01 François Dumont PR libstdc++/53115 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets after insertion of several equivalent elements. * testsuite/23_containers/unordered_multiset/insert/53115.cc: New. * testsuite/23_containers/unordered_multimap/insert/53115.cc: New. 2012-04-29 Marc Glisse Paolo Carlini PR libstdc++/51795 * include/bits/stl_algobase.h (__lg<>(_Size)): Remove. (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long), __lg(long long), __lg(unsigned long long)): Define constexpr. * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm limitations. (__mod): Adjust. (linear_congruential): Remove FIXME static_assert. * include/bits/random.tcc (_Mod<>): Adjust. * testsuite/26_numerics/random/linear_congruential_engine/operators/ 51795.cc: New. 2012-04-29 Jonathan Wakely * include/std/functional (function::function(F)): LWG 2132: Disable constructor if argument isn't callable. * testsuite/20_util/function/cons/callable.cc: New. 2012-04-29 Marc Glisse PR libstdc++/22200 * include/std/limits (numeric_limits<>::is_modulo): False for signed types. 2012-04-25 Benjamin Kosnik * include/bits/hashtable.h: Adjust doxygen markup for base classes. * include/bits/hashtable_policy.h: Same. 2012-04-25 Benjamin Kosnik PR libstdc++/52689 * testsuite/17_intro/static.cc: Fix. * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New. * testsuite/lib/libstdc++.exp (check_v3_target_static_libstdcxx): New. 2012-04-25 Jonathan Wakely * include/std/scoped_allocator (scoped_allocator::__outermost): Do not pass non-POD to varargs function. * testsuite/20_util/scoped_allocator/1.cc: Fix test. 2012-04-24 Benjamin Kosnik PR libstdc++/52689 * testsuite/17_intro/static.cc: New. 2012-04-23 Daniel Krugler * include/std/type_traits (is_nothrow_destructible): Implement. (is_destructible): Implement LWG 2049. * testsuite/util/testsuite_tr1.h: Add tests. * testsuite/20_util/is_nothrow_destructible/value.cc: New. * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc: * testsuite/20_util/is_nothrow_destructible/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/is_destructible/value.cc: Adjust and extend. * testsuite/20_util/is_default_constructible/value.cc: Tweak. * testsuite/20_util/is_constructible/value-2.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. 2012-04-23 Paolo Carlini PR libstdc++/53080 * include/std/array (tuple_element, get): static_assert I < N. * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: New. * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise. * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix. 2012-04-23 Chris Jefferson PR testsuite/53046 * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size of array A. * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise. 2012-04-22 Paolo Carlini PR libstdc++/53067 * include/bits/hashtable_policy.h: Change inheritances to public. * testsuite/23_containers/unordered_map/requirements/53067.cc: New. * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise. 2012-04-22 Jonathan Wakely * include/ext/alloc_traits.h (__alloc_traits::difference_type): Define. 2012-04-22 Jonathan Wakely PR libstdc++/53027 * include/bits/ptr_traits.h (pointer_traits::rebind): Make public. * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check rebind works. 2012-04-22 Jonathan Wakely * include/debug/forward_list (forward_list::splice_after): Check allocators are equal. * src/c++11/debug.cc: Fix spelling. * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc: New. * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc: Likewise. * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc: Likewise. 2012-04-20 Paolo Carlini PR libstdc++/53052 * include/std/type_traits (is_explicitly_convertible): Remove. * testsuite/20_util/is_explicitly_convertible: 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. 2012-04-17 Benjamin Kosnik * testsuite/20_util/specialized_algorithms/uninitialized_copy/ 808590.cc: New. 2012-04-17 Rainer Orth * testsuite/util/testsuite_abi.cc (compare_symbols): Change summary header to avoid confusion with DejaGnu header. 2012-04-15 Paolo Carlini PR libstdc++/52702 * include/std/type_traits (is_trivially_destructible): Add. (has_trivial_destructor): Remove. * testsuite/util/testsuite_common_types.h: Adjust. * testsuite/20_util/tuple/requirements/dr801.cc: Likewise. * testsuite/20_util/pair/requirements/dr801.cc: Likewise. * testsuite/20_util/is_trivially_destructible/value.cc: New. * testsuite/20_util/is_trivially_destructible/requirements/ typedefs.cc: Likewise. * testsuite/20_util/is_trivially_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. 2012-04-14 Paolo Carlini PR libstdc++/52699 * include/bits/random.tcc (independent_bits_engine<>::operator()()) Avoid various overflows; use common_type on result_type and _RandomNumberEngine::result_type; avoid floating point computations; other smaller tweaks. * include/bits/random.tcc (uniform_int_distribution<>::operator()) Use common_type; assume _UniformRandomNumberGenerator::result_type unsigned; tidy. * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long), __lg(unsigned long long)): Add. 2012-04-14 Alan Modra PR libstdc++/52839 * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on glibcxx_cv_atomic_long_long. * configure: Regenerate. 2012-04-13 Paolo Carlini * testsuite/26_numerics/cmath/51083.cc: Move... * testsuite/26_numerics/headers/cmath/51083.cc: ... here. 2012-04-13 Laurent Alfonsi PR libstdc++/52604 * src/c++98/mt_allocator.cc: (__freelist::~__freelist): Reset pointer. 2012-04-13 Paolo Carlini * include/debug/safe_iterator.h (_BeforeBeginHelper<>:: _S_Is_Beginnest): Add. * include/debug/forward_list (_BeforeBeginHelper<>:: _S_Is_Beginnest): Likewise. (_Safe_iterator<>::_M_is_beginnest): Add. * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range): Use the latter. * testsuite/23_containers/forward_list/debug/splice_after.cc: Add test. 2012-04-12 Benjamin Kosnik * include/bits/unordered_map.h (__unordered_map): Remove. (__unordered_multimap): Remove. Add aliases for __umap_traits, __umap_hashtable, __ummap_traits, __ummap_hashtable. (unordered_map): Derive from __umap_hashtable. (unordered_multimap): Derive from __ummap_hashtable. * include/bits/unordered_set.h (__unordered_set): Remove. (__unordered_multiset): Remove. Add aliases for __uset_traits, __uset_hashtable, __umset_traits, __umset_hashtable. (unordered_set): Derive from __uset_hashtable. (unordered_multiset): Derive from __umset_hashtable. * include/bits/hashtable.h (__cache_default): New, consolidated cache defaults for _Hashtable. Adjust comments for doxygen. (_Hashtable): Consolidate bool template parameters into new, _Traits class. Inherited base classes synthesize _Hashtable in CRTP via original 10 parameters. Prefer using declarations to typedefs, add __node_type, __bucket_type, etc. Push many nested types down hierarchy to _Hashtable_base. Add constructors necessary for top-level unordered_containers. Consolidate insert member functions and logic in new base class, __detail::_Insert and __detail::_Insert_base. (_Hashtable::operator=(initializer_list)): Add. * include/bits/hashtable_policy.h: Convert to doxygen markup. (_Hashtable_traits) New. Consolidate bool template parameters here. (_Insert, _Insert_base): New, consolidated insert member functions. (_Map_base, _Equality, _Rehash_base): Adjust template parameters, use base types. (_Hashtable_base): Move type declarations useful to other base classes into this class. * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust traits, line numbers. 2012-04-12 Jeffrey Yasskin PR libstdc++/52822 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode. (__find_if_not_n): Like __find_if_not, but works on and updates a counted range instead of a bounded range. (stable_partition): Guarantee !__pred(*__first) in call to __stable_partition_adaptive() or __inplace_stable_partition(). (__stable_partition_adaptive): Use new precondition to avoid moving/copying objects onto themselves. Guarantee new precondition to recursive calls. (__inplace_stable_partition): Use new precondition to simplify base case, remove __last parameter. Guarantee new precondition to recursive calls. * testsuite/25_algorithms/stable_partition/moveable.cc (test02): Test a sequence that starts with a value matching the predicate. * testsuite/25_algorithms/stable_partition/pr52822.cc: Test vectors, which have a destructive self-move-assignment. 2012-04-12 Andreas Schwab * testsuite/Makefile.am (check_DEJAGNUnormal0): Run prettyprinters.exp. * testsuite/Makefile.in: Regenerated. 2012-04-12 Paolo Carlini PR libstdc++/52942 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd): In C++11 mode do not derive from std::unary_function. * include/ext/functional (identity, select1st, select2nd): Adjust. * testsuite/23_containers/unordered_map/requirements/52942.cc: New. * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise. 2012-04-11 Jonathan Wakely PR libstdc++/52924 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add user-defined destructor. (_Sp_counted_inplace): Likewise. * testsuite/20_util/shared_ptr/cons/52924.cc: New. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers. 2012-04-11 Jonathan Wakely * doc/xml/manual/debug.xml (Debug Versions of Library Binary Files): Re-arrange text slightly. 2012-04-11 Jonathan Wakely * testsuite/performance/30_threads/future/polling.cc: Adjust. 2012-04-11 Paolo Carlini * include/bits/forward_list.h (splice_after(const_iterator, forward_list&), splice_after(const_iterator, forward_list&, const_iterator), splice_after(const_iterator, forward_list&, const_iterator, const_iterator), merge(forward_list&), merge(forward_list&, _Comp)): Add per C++11 as published (and LWG 1310). * include/debug/forward_list: Adjust. * include/bits/forward_list.h (splice_after(const_iterator, forward_list&&, const_iterator)): Only declare. (_M_transfer_after): Remove. (_M_splice_after(const_iterator, forward_list&&)): Change signature. (splice_after(const_iterator, forward_list&&, const_iterator, const_iterator)): Use the latter. * include/bits/forward_list.tcc (splice_after(const_iterator, forward_list&&, const_iterator)): Define here. (_M_splice_after): Define, use throughout. * include/bits/forward_list.h (insert_after(const_iterator, std::initializer_list<_Tp>)): Forward to insert_after(const_iterator, _InputIterator, _InputIterator). * include/bits/forward_list.tcc: Remove definition. * testsuite/23_containers/forward_list/modifiers/6.cc: New. * testsuite/23_containers/forward_list/operations/1.cc: Adjust. 2012-04-11 Paolo Carlini PR libstdc++/52931 * include/bits/functional_hash.h (struct hash): Remove definition. * testsuite/20_util/hash/52931.cc: New. 2012-04-11 Manuel López-Ibáñez PR 24985 * testsuite/lib/prune.exp: Handle caret. 2012-04-05 Rainer Orth Partially revert: 2012-03-28 Benjamin Kosnik PR libstdc++/52689 * src/c++98/compatibility-list.cc: Same. 2012-04-05 Bernhard Reutner-Fischer PR bootstrap/52840 * src/Makefile.am (build-debug): Do not adjust vpath dir, remove Makefile.tmp * src/Makefile.in: Adjust as per above. 2012-04-04 Uros Bizjak Partially revert: 2012-03-28 Benjamin Kosnik PR libstdc++/52689 * src/c++98/compatibility-ldbl.cc: Guard with PIC 2012-04-02 Tristan Gingold * crossconfig.m4 (*-*-*vms*): Add. * configure: Regenerate. 2012-04-01 Jonathan Wakely PR libstdc++/52591 * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch to _M_move_assign depending on whether allocator is moved. (vector::_M_move_assign): Add overloaded functions. * testsuite/23_containers/vector/52591.cc: New. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * 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. 2012-04-01 Jonathan Wakely * include/std/functional (__callable_functor): Overload for volatile-qualified pointers. * testsuite/20_util/function/10.cc: New. 2012-03-30 Jeffrey Yasskin Paolo Carlini PR libstdc++/52799 * include/bits/deque.tcc (emplace): Fix thinko, replace push_front -> emplace_front, and likewise for *_back. * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New. * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise. * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise. 2012-03-28 Benjamin Kosnik PR libstdc++/52689 * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak. * libsupc++/Makefile.in: Regenerated. * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak. (libstdc___la_SOURCES): Add in compatiblity files, with content that varies with -DPIC. * src/Makefile.in: Regenerated. * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak. * src/c++11/Makefile.in: Regenerated. * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC. * src/c++11/compatibility-c++0x.cc: Same. * src/c++11/future.cc: Consolidate compatibility bits into.. * src/c++11/mutex.cc: Consolidate compatibility bits into.. * src/c++11/compatibility-thread-cxx0x.cc: ...here. New. * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak. * src/c++98/Makefile.in: Regenerated. * src/c++98/compatibility-ldbl.cc: Guard with PIC * src/c++98/compatibility-list-2.cc: Same. * src/c++98/compatibility-list.cc: Same. * src/c++98/compatibility.cc: Tweak comments. 2012-03-28 Terry Guo * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New. * testsuite/Makefile.in: Regenerated. 2012-03-27 Jonathan Wakely * include/std/functional (mem_fn): Qualify to prevent ADL. * testsuite/20_util/function_objects/mem_fn/adl.cc: New. 2012-03-27 Jonathan Wakely * include/std/type_traits (result_of): Fix handling of cv-quals. * testsuite/20_util/result_of/1.cc: New. * testsuite/20_util/result_of/2.cc: New. * 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. 2012-03-23 David S. Miller * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update. 2012-03-23 Benjamin Kosnik * scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2. * testsuite/lib/libstdc++.exp: Same. 2012-03-23 Paolo Carlini * include/bits/forward_list.h: Slightly tweak two comments. 2012-03-22 Benjamin Kosnik * doc/Makefile.am: XML output names have only .xml suffix. * doc/Makefile.in: Regenerate. 2012-03-22 Paolo Carlini * include/std/array (array<>::at(size_type) const): Fix version for undefined __EXCEPTIONS. 2013-03-21 Andreas Tobler * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Skip this test on powerpc64-*-freebsd*. 2012-03-20 Jonathan Wakely * include/bits/stl_list.h (list::_M_size): Use NSDMI. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust line numbers. * 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. 2012-03-19 Paweł Sikora PR libstdc++/52540 * include/Makefile.am (c++config.h): Fix sed rule to not break the _GLIBCXX_EXTERN_TEMPLATE redefinition. * include/Makefile.in: Regenerate. 2012-03-19 Paolo Carlini * testsuite/Makefile.in: Regenerate. 2012-03-19 Benjamin Kosnik * include/bits/allocator.h (std::allocator): Base class is __allocator_base. (uses_allocator): Add to sub-grouping. * include/ext/new_allocator.h: Doxygen markup for tparm. * config/allocator/bitmap_allocator_base.h: Use __allocator_base template alias in C++11. * config/allocator/malloc_allocator_base.h: Same. * config/allocator/mt_allocator_base.h: Same. * config/allocator/new_allocator_base.h: Same. * config/allocator/pool_allocator_base.h: Same. 2012-03-19 Benjamin Kosnik * include/ext/pb_ds/detail/pat_trie_/ constructors_destructor_fn_imps.hpp: Increment after recursion. * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert node_type markup from brief. 2012-03-16 François Dumont PR libstdc++/52476 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add. (_Hashtable<>::_M_rehash): Use the latter. * testsuite/23_containers/unordered_multimap/insert/52476.cc: New. * testsuite/23_containers/unordered_multiset/insert/52476.cc: New. 2012-03-14 Rainer Orth * config/os/solaris/solaris2.8: Rename to ... * config/os/solaris/solaris2.9: ... this. * config/abi/post/solaris2.8: Rename to ... * config/abi/post/solaris2.9: ... this. * configure.host (os_include_dir): Remove solaris2.8. Reflect renaming. (abi_baseline_pair): Remove *-*-solaris2.8. Reflect renaming. * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove (GLIBCXX_CHECK_STDLIB_PROTO): Remove. * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove (GLIBCXX_CHECK_STDLIB_PROTO): Remove. (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling. * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8 handling. * configure: Regenerate. * config.h.in: Regenerate. * config/os/solaris/solaris2.9/os_defines.h (__CORRECT_ISO_CPP_MATH_H_PROTO): Define. (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define. * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to __CORRECT_ISO_CPP_MATH_H_PROTO. [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove. * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to __CORRECT_ISO_CPP_MATH_H_PROTO. * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads): Remove Solaris 8 reference. * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc: Don't xfail on *-*-solaris2.8. * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc: Likewise. * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on *-*-solaris2.8. 2012-03-14 Rainer Orth * configure.host (irix6.5*): Remove. * config/os/irix: Remove. * config/io/basic_file_stdio.cc (__basic_file::showmanyc()) [_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove. * doc/xml/faq.xml: Remove IRIX reference. * doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries): Remove IRIX example. * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Remove mips-sgi-irix6* handling. * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise. * testsuite/21_strings/basic_string/pthread18185.cc: Likewise. * testsuite/21_strings/basic_string/pthread4.cc: Likewise. * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise. * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise. * testsuite/23_containers/list/pthread1.cc: Likewise. * testsuite/23_containers/list/pthread5.cc: Likewise. * testsuite/23_containers/map/pthread6.cc: Likewise. * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise. * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise. * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise. * testsuite/30_threads/async/42819.cc: Likewise. * testsuite/30_threads/async/49668.cc: Likewise. * testsuite/30_threads/async/any.cc: Likewise. * testsuite/30_threads/async/async.cc: Likewise. * testsuite/30_threads/async/launch.cc: Likewise. * testsuite/30_threads/async/sync.cc: Likewise. * testsuite/30_threads/call_once/39909.cc: Likewise. * testsuite/30_threads/call_once/49668.cc: Likewise. * testsuite/30_threads/call_once/call_once1.cc: Likewise. * testsuite/30_threads/condition_variable/cons/1.cc: Likewise. * testsuite/30_threads/condition_variable/members/1.cc: Likewise. * testsuite/30_threads/condition_variable/members/2.cc: Likewise. * testsuite/30_threads/condition_variable/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/condition_variable_any/50862.cc: Likewise. * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise. * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise. * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise. * testsuite/30_threads/future/cons/move.cc: Likewise. * testsuite/30_threads/future/members/45133.cc: Likewise. * testsuite/30_threads/future/members/get.cc: Likewise. * testsuite/30_threads/future/members/get2.cc: Likewise. * testsuite/30_threads/future/members/share.cc: Likewise. * testsuite/30_threads/future/members/valid.cc: Likewise. * testsuite/30_threads/future/members/wait.cc: Likewise. * testsuite/30_threads/future/members/wait_for.cc: Likewise. * testsuite/30_threads/future/members/wait_until.cc: Likewise. * testsuite/30_threads/lock/1.cc: Likewise. * testsuite/30_threads/lock/2.cc: Likewise. * testsuite/30_threads/lock/3.cc: Likewise. * testsuite/30_threads/lock/4.cc: Likewise. * testsuite/30_threads/lock_guard/cons/1.cc: Likewise. * testsuite/30_threads/mutex/cons/1.cc: Likewise. * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/mutex/lock/1.cc: Likewise. * testsuite/30_threads/mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/mutex/unlock/1.cc: Likewise. * testsuite/30_threads/packaged_task/49668.cc: Likewise. * testsuite/30_threads/packaged_task/cons/1.cc: Likewise. * testsuite/30_threads/packaged_task/cons/2.cc: Likewise. * testsuite/30_threads/packaged_task/cons/3.cc: Likewise. * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise. * testsuite/30_threads/packaged_task/cons/move.cc: Likewise. * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise. * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise. * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise. * testsuite/30_threads/packaged_task/members/reset.cc: Likewise. * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise. * testsuite/30_threads/packaged_task/members/swap.cc: Likewise. * testsuite/30_threads/packaged_task/members/valid.cc: Likewise. * testsuite/30_threads/promise/cons/1.cc: Likewise. * testsuite/30_threads/promise/cons/alloc.cc: Likewise. * testsuite/30_threads/promise/cons/move.cc: Likewise. * testsuite/30_threads/promise/cons/move_assign.cc: Likewise. * testsuite/30_threads/promise/members/get_future.cc: Likewise. * testsuite/30_threads/promise/members/get_future2.cc: Likewise. * testsuite/30_threads/promise/members/set_exception.cc: Likewise. * testsuite/30_threads/promise/members/set_exception2.cc: Likewise. * testsuite/30_threads/promise/members/set_value.cc: Likewise. * testsuite/30_threads/promise/members/set_value2.cc: Likewise. * testsuite/30_threads/promise/members/set_value3.cc: Likewise. * testsuite/30_threads/promise/members/swap.cc: Likewise. * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.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/native_handle/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.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/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/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/unlock/1.cc: Likewise. * testsuite/30_threads/shared_future/cons/move.cc: Likewise. * testsuite/30_threads/shared_future/members/45133.cc: Likewise. * testsuite/30_threads/shared_future/members/get.cc: Likewise. * testsuite/30_threads/shared_future/members/get2.cc: Likewise. * testsuite/30_threads/shared_future/members/valid.cc: Likewise. * testsuite/30_threads/shared_future/members/wait.cc: Likewise. * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise. * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise. * testsuite/30_threads/this_thread/1.cc: Likewise. * testsuite/30_threads/this_thread/2.cc: Likewise. * testsuite/30_threads/this_thread/3.cc: Likewise. * testsuite/30_threads/this_thread/4.cc: Likewise. * testsuite/30_threads/thread/cons/1.cc: Likewise. * testsuite/30_threads/thread/cons/2.cc: Likewise. * testsuite/30_threads/thread/cons/3.cc: Likewise. * testsuite/30_threads/thread/cons/4.cc: Likewise. * testsuite/30_threads/thread/cons/49668.cc: Likewise. * testsuite/30_threads/thread/cons/5.cc: Likewise. * testsuite/30_threads/thread/cons/6.cc: Likewise. * testsuite/30_threads/thread/cons/7.cc: Likewise. * testsuite/30_threads/thread/cons/8.cc: Likewise. * testsuite/30_threads/thread/cons/9.cc: Likewise. * testsuite/30_threads/thread/cons/moveable.cc: Likewise. * testsuite/30_threads/thread/members/1.cc: Likewise. * testsuite/30_threads/thread/members/2.cc: Likewise. * testsuite/30_threads/thread/members/3.cc: Likewise. * testsuite/30_threads/thread/members/4.cc: Likewise. * testsuite/30_threads/thread/members/5.cc: Likewise. * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise. * testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/thread/swap/1.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/typesizes.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/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/timed_mutex/try_lock_until/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise. * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/try_lock/1.cc: Likewise. * testsuite/30_threads/try_lock/2.cc: Likewise. * testsuite/30_threads/try_lock/3.cc: Likewise. * testsuite/30_threads/try_lock/4.cc: Likewise. * testsuite/30_threads/unique_lock/cons/1.cc: Likewise. * testsuite/30_threads/unique_lock/cons/2.cc: Likewise. * testsuite/30_threads/unique_lock/cons/3.cc: Likewise. * testsuite/30_threads/unique_lock/cons/4.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/1.cc: Likewise. * testsuite/30_threads/unique_lock/locking/2.cc: Likewise. * testsuite/30_threads/unique_lock/locking/3.cc: Likewise. * testsuite/30_threads/unique_lock/locking/4.cc: Likewise. * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise. * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise. * testsuite/ext/rope/pthread7-rope.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/thread/ default_weaktoshared.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/thread/ mutex_weaktoshared.cc: Likewise. * testsuite/23_containers/vector/capacity/resize/1.cc: Remove dg-options for mips*-*-irix6*. * testsuite/27_io/ios_base/storage/1.cc: Likewise. * testsuite/27_io/ios_base/storage/2.cc: Likewise. * testsuite/27_io/ios_base/storage/3.cc: Likewise. * testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6 workaround. 2012-03-14 Paolo Carlini * include/bits/forward_list.h: Fix comments. 2012-03-13 Terry Guo * testsuite/Makefile.in (TEST_GCC_EXEC_PREFIX): New. 2012-03-12 Rainer Orth * configure.host: Remove osf* handling. * config/os/osf: Remove. * doc/xml/manual/using.xml: Remove OSF reference. * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf* handling. * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise. * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise. * testsuite/21_strings/basic_string/pthread18185.cc: Likewise. * testsuite/21_strings/basic_string/pthread4.cc: Likewise. * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise. * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise. * testsuite/23_containers/list/pthread1.cc: Likewise. * testsuite/23_containers/list/pthread5.cc: Likewise. * testsuite/23_containers/map/pthread6.cc: Likewise. * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise. * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise. * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise. * testsuite/30_threads/async/42819.cc: Likewise. * testsuite/30_threads/async/49668.cc: Likewise. * testsuite/30_threads/async/any.cc: Likewise. * testsuite/30_threads/async/async.cc: Likewise. * testsuite/30_threads/async/launch.cc: Likewise. * testsuite/30_threads/async/sync.cc: Likewise. * testsuite/30_threads/call_once/39909.cc: Likewise. * testsuite/30_threads/call_once/49668.cc: Likewise. * testsuite/30_threads/call_once/call_once1.cc: Likewise. * testsuite/30_threads/condition_variable/cons/1.cc: Likewise. * testsuite/30_threads/condition_variable/members/1.cc: Likewise. * testsuite/30_threads/condition_variable/members/2.cc: Likewise. * testsuite/30_threads/condition_variable/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/condition_variable_any/50862.cc: Likewise. * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise. * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise. * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise. * testsuite/30_threads/future/cons/move.cc: Likewise. * testsuite/30_threads/future/members/45133.cc: Likewise. * testsuite/30_threads/future/members/get.cc: Likewise. * testsuite/30_threads/future/members/get2.cc: Likewise. * testsuite/30_threads/future/members/share.cc: Likewise. * testsuite/30_threads/future/members/valid.cc: Likewise. * testsuite/30_threads/future/members/wait.cc: Likewise. * testsuite/30_threads/future/members/wait_for.cc: Likewise. * testsuite/30_threads/future/members/wait_until.cc: Likewise. * testsuite/30_threads/lock/1.cc: Likewise. * testsuite/30_threads/lock/2.cc: Likewise. * testsuite/30_threads/lock/3.cc: Likewise. * testsuite/30_threads/lock/4.cc: Likewise. * testsuite/30_threads/lock_guard/cons/1.cc: Likewise. * testsuite/30_threads/mutex/cons/1.cc: Likewise. * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/mutex/lock/1.cc: Likewise. * testsuite/30_threads/mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/mutex/unlock/1.cc: Likewise. * testsuite/30_threads/packaged_task/49668.cc: Likewise. * testsuite/30_threads/packaged_task/cons/1.cc: Likewise. * testsuite/30_threads/packaged_task/cons/2.cc: Likewise. * testsuite/30_threads/packaged_task/cons/3.cc: Likewise. * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise. * testsuite/30_threads/packaged_task/cons/move.cc: Likewise. * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise. * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise. * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise. * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise. * testsuite/30_threads/packaged_task/members/reset.cc: Likewise. * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise. * testsuite/30_threads/packaged_task/members/swap.cc: Likewise. * testsuite/30_threads/packaged_task/members/valid.cc: Likewise. * testsuite/30_threads/promise/cons/1.cc: Likewise. * testsuite/30_threads/promise/cons/alloc.cc: Likewise. * testsuite/30_threads/promise/cons/move.cc: Likewise. * testsuite/30_threads/promise/cons/move_assign.cc: Likewise. * testsuite/30_threads/promise/members/get_future.cc: Likewise. * testsuite/30_threads/promise/members/get_future2.cc: Likewise. * testsuite/30_threads/promise/members/set_exception.cc: Likewise. * testsuite/30_threads/promise/members/set_exception2.cc: Likewise. * testsuite/30_threads/promise/members/set_value.cc: Likewise. * testsuite/30_threads/promise/members/set_value2.cc: Likewise. * testsuite/30_threads/promise/members/set_value3.cc: Likewise. * testsuite/30_threads/promise/members/swap.cc: Likewise. * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.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/native_handle/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.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/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/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/unlock/1.cc: Likewise. * testsuite/30_threads/shared_future/cons/move.cc: Likewise. * testsuite/30_threads/shared_future/members/45133.cc: Likewise. * testsuite/30_threads/shared_future/members/get.cc: Likewise. * testsuite/30_threads/shared_future/members/get2.cc: Likewise. * testsuite/30_threads/shared_future/members/valid.cc: Likewise. * testsuite/30_threads/shared_future/members/wait.cc: Likewise. * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise. * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise. * testsuite/30_threads/this_thread/1.cc: Likewise. * testsuite/30_threads/this_thread/2.cc: Likewise. * testsuite/30_threads/this_thread/3.cc: Likewise. * testsuite/30_threads/this_thread/4.cc: Likewise. * testsuite/30_threads/thread/cons/1.cc: Likewise. * testsuite/30_threads/thread/cons/2.cc: Likewise. * testsuite/30_threads/thread/cons/3.cc: Likewise. * testsuite/30_threads/thread/cons/4.cc: Likewise. * testsuite/30_threads/thread/cons/49668.cc: Likewise. * testsuite/30_threads/thread/cons/5.cc: Likewise. * testsuite/30_threads/thread/cons/6.cc: Likewise. * testsuite/30_threads/thread/cons/7.cc: Likewise. * testsuite/30_threads/thread/cons/8.cc: Likewise. * testsuite/30_threads/thread/cons/9.cc: Likewise. * testsuite/30_threads/thread/cons/moveable.cc: Likewise. * testsuite/30_threads/thread/members/1.cc: Likewise. * testsuite/30_threads/thread/members/2.cc: Likewise. * testsuite/30_threads/thread/members/3.cc: Likewise. * testsuite/30_threads/thread/members/4.cc: Likewise. * testsuite/30_threads/thread/members/5.cc: Likewise. * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise. * testsuite/30_threads/thread/swap/1.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/typesizes.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/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/timed_mutex/try_lock_until/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise. * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/try_lock/1.cc: Likewise. * testsuite/30_threads/try_lock/2.cc: Likewise. * testsuite/30_threads/try_lock/3.cc: Likewise. * testsuite/30_threads/try_lock/4.cc: Likewise. * testsuite/30_threads/unique_lock/cons/1.cc: Likewise. * testsuite/30_threads/unique_lock/cons/2.cc: Likewise. * testsuite/30_threads/unique_lock/cons/3.cc: Likewise. * testsuite/30_threads/unique_lock/cons/4.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/1.cc: Likewise. * testsuite/30_threads/unique_lock/locking/2.cc: Likewise. * testsuite/30_threads/unique_lock/locking/3.cc: Likewise. * testsuite/30_threads/unique_lock/locking/4.cc: Likewise. * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise. * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise. * testsuite/ext/rope/pthread7-rope.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/thread/ default_weaktoshared.cc: Likewise. * testsuite/tr1/2_general_utilities/shared_ptr/thread/ mutex_weaktoshared.cc: Likewise. 2012-03-12 Paolo Carlini PR libstdc++/52562 * libsupc++/typeinfo (type_info::name, before, operator==, operator!=): Mark noexcept in C++11 mode. * libsupc++/tinfo.cc (type_info::operator==): Adjust. * libsupc++/tinfo2.cc (type_info::before): Likewise. * testsuite/18_support/type_info/52562.cc: New. 2012-03-10 John David Anglin * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS symbols added in last change. PR libstdc++/52456 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update. 2012-03-09 Andreas Schwab * config/locale/gnu/monetary_members.cc (moneypunct::_M_initialize_moneypunct): Throw caught exception again. (moneypunct::_M_initialize_moneypunct): Likewise. * testsuite/22_locale/locale/cons/12352.cc: Also test en_US locale. 2012-03-09 Paolo Carlini * include/debug/formatter.h (enum _Debug_msg_id): Add __msg_self_move_assign. * include/debug/macros.h (__glibcxx_check_self_move_assign): Add. * src/c++11/debug.cc (_S_debug_messages): Update. * include/debug/safe_iterator.h (_Safe_iterator<>::operator= (_Safe_iterator&&)): Add check for self move assignment. * 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/string: Likewise. * include/debug/list: Likewise. * include/debug/multimap.h: Likewise. * testsuite/21_strings/debug/self_move_assign_neg.cc: New. * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_map/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/multimap/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/ self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/forward_list/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_set/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/vector/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/vector/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/multiset/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/list/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/ self_move_assign_neg.cc: Likewise. * testsuite/23_containers/unordered_multiset/debug/ iterator_self_move_assign_neg.cc: Likewise. * testsuite/23_containers/map/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc: Likewise. 2012-03-08 Benjamin Kosnik * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0. * include/bits/locale_facets.h: Adjust markup to avoid warnings. * include/ext/pb_ds/assoc_container.hpp: Same. * include/ext/pb_ds/priority_queue.hpp: Same. * include/std/fstream: Same. * include/std/ratio: Same. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line numbers. * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same. 2012-03-08 Jonathan Wakely PR libstdc++/52433 * include/debug/safe_iterator.h (_Safe_iterator): Add debug checks to move constructor and move assignment operator. 2012-03-05 Paolo Carlini * include/bits/stl_algobase.h (iter_swap): In C++11 mode simply call swap. * include/bits/stl_bvector.h (swap(_Bit_reference, _Bit_reference), swap(_Bit_reference, bool&), swap(bool&, _Bit_reference)): Add. * testsuite/23_containers/vector/bool/swap.cc: New. 2012-03-04 Paolo Carlini Jonathan Wakely PR libstdc++/43813 * include/bits/stl_iterator_base_types.h (_RequireInputIter): New. * include/ext/vstring.h (__versa_string<>::__versa_string (_InputIterator, _InputIterator, const _Alloc&), __versa_string<>::append(_InputIterator, _InputIterator), __versa_string<>::assign(_InputIterator, _InputIterator), __versa_string<>::insert(iterator, _InputIterator, _InputIterator), __versa_string<>::replace(iterator, iterator, _InputIterator, _InputIterator)): Use it. * include/bits/stl_list.h (list<>::list(_InputIterator, _InputIterator, const allocator_type&), list<>::assign(_InputIterator, _InputIterator), list<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/stl_vector.h (vector<>::vector(_InputIterator, _InputIterator, const allocator_type&), vector<>::assign(_InputIterator, _InputIterator), vectort<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/stl_deque.h (deque<>::deque(_InputIterator, _InputIterator, const allocator_type&), deque<>::deque(_InputIterator, _InputIterator), deque<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/stl_bvector.h (vector<>::vector(_InputIterator, _InputIterator, const allocator_type&), vector<>::deque(_InputIterator, _InputIterator), vector<>::insert(iterator, _InputIterator, _InputIterator)): Likewise. * include/bits/forward_list.h (forward_list<>::forward_list (_InputIterator, _InputIterator, const allocator_type&), forward_list<>::assign(_InputIterator, _InputIterator), forward_list<>::insert_after(const_iterator, _InputIterator, _InputIterator)): Likewise. (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove. (forward_list<>::_M_range_initialize): Add, adjust everywhere. * include/bits/forward_list.tcc: Adjust. * include/debug/forward_list: Adjust. * include/debug/vector: Likewise. * include/debug/deque: Likewise. * include/debug/list: Likewise. * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New. * testsuite/23_containers/forward_list/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/vector/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/deque/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/list/requirements/ do_the_right_thing.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/forward_list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ assign_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Likewise. 2012-03-04 Jonathan Wakely PR libstdc++/52433 * include/debug/safe_iterator.h (_Safe_iterator): Add move constructor and move assignment operator. * testsuite/23_containers/vector/debug/52433.cc: New. 2012-03-02 Paolo Carlini * include/std/limits (numeric_limits): Fix returns per C++11. * testsuite/18_support/numeric_limits/primary.cc: New. 2012-03-02 Benjamin Kosnik * include/c_global/cstdio: Remove extraneous extern. * include/c_std/cstdio: Same. 2012-03-02 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. 2012-03-01 Benjamin Kosnik Ramana Radhakrishnan PR libstdc++/51785 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New. * configure.ac: Call it. * configure: Regenerate. * config.h.in: Same. * config/os/gnu-linux/os_defines.h: Conditionally undefine _GLIBCXX_HAVE_GETS. * include/c_global/cstdio: Conditionally declare deprecated gets. * include/c_std/cstdio: Same. 2012-03-01 Michael Spertus * include/tr2/type_traits (typelist): To __reflection_typelist. (first, rest, empty): Remove. 2012-03-01 Benjamin Kosnik * testsuite/Makefile.am (CLEANFILES): Add *.gdb. * testsuite/Makefile.in: Regenerate. 2012-02-29 H.J. Lu * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update. 2012-02-28 Benjamin Kosnik PR libstdc++/52191 * testsuite/util/testsuite_abi.cc (compare_symbols): Check new symbols added into the latest version. Mark tls entities as undesignated. 2012-02-28 Jakub Jelinek PR bootstrap/52414 * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines if they are at the beginning of lines (with optional whitespace before #). * src/Makefile.in: Regenerated. 2012-02-27 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. 2012-02-27 Rainer Orth PR libstdc++/52188 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming. Remove ENABLE_SYMVERS_SOL2. * configure: Regenerate. * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver): Postprocess mapfile. [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling. * src/Makefile.in: Regenerate. * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]: Don't export _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv. 2012-02-25 John David Anglin PR testsuite/52201 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: Require atomic builtins. * testsuite/29_atomics/atomic/operators/51811.cc: Likewise. 2012-02-23 Jason Merrill * include/bits/locale_facets.h (class num_get): Undo reordering of do_get virtual functions. 2012-02-14 Edward Smith-Rowland <3dw4rd@verizon.net> * testsuite/26_numerics/random/ uniform_real_distribution/requirements/typedefs.cc: Check param_type. * testsuite/26_numerics/random/ piecewise_constant_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ chi_squared_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ normal_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ uniform_int_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ poisson_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ bernoulli_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ discrete_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ weibull_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ cauchy_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ negative_binomial_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ gamma_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ fisher_f_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ exponential_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ binomial_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ lognormal_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ extreme_value_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ piecewise_linear_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ student_t_distribution/requirements/typedefs.cc: Ditto. * testsuite/26_numerics/random/ geometric_distribution/requirements/typedefs.cc: Ditto. 2012-02-21 Benjamin Kosnik PR libstdc++/50349 * config/abi/pre/gnu.ver: Only one local. * config/abi/pre/gnu-versioned-namespace.ver: Same. 2012-02-21 Paolo Carlini PR libstdc++/52317 (cont) * include/profile/unordered_map: Ad Library Exception comment. * include/profile/set: Likewise. * include/profile/base.h: Likewise. * include/profile/impl/profiler_list_to_slist.h: Likewise. * include/profile/impl/profiler_container_size.h: Likewise. * include/profile/impl/profiler_vector_size.h: Likewise. * include/profile/impl/profiler_hash_func.h: Likewise. * include/profile/impl/profiler_trace.h: Likewise. * include/profile/impl/profiler_list_to_vector.h: Likewise. * include/profile/impl/profiler_vector_to_list.h: Likewise. * include/profile/impl/profiler.h: Likewise. * include/profile/impl/profiler_state.h: Likewise. * include/profile/impl/profiler_map_to_unordered_map.h: Likewise. * include/profile/impl/profiler_algos.h: Likewise. * include/profile/impl/profiler_hashtable_size.h: Likewise. * include/profile/impl/profiler_node.h: Likewise. * include/profile/vector: Likewise. * include/profile/unordered_set: Likewise. * include/profile/map.h: Likewise. * include/profile/map: Likewise. 2012-02-21 Paolo Carlini PR libstdc++/52317 * python/Makefile.am: Update boilerplate license text to GPLv3. * include/profile/unordered_map: Likewise. * include/profile/set: Likewise. * include/profile/base.h: Likewise. * include/profile/impl/profiler_list_to_slist.h: Likewise. * include/profile/impl/profiler_container_size.h: Likewise. * include/profile/impl/profiler_vector_size.h: Likewise. * include/profile/impl/profiler_hash_func.h: Likewise. * include/profile/impl/profiler_trace.h: Likewise. * include/profile/impl/profiler_list_to_vector.h: Likewise. * include/profile/impl/profiler_vector_to_list.h: Likewise. * include/profile/impl/profiler.h: Likewise. * include/profile/impl/profiler_state.h: Likewise. * include/profile/impl/profiler_map_to_unordered_map.h: Likewise. * include/profile/impl/profiler_algos.h: Likewise. * include/profile/impl/profiler_hashtable_size.h: Likewise. * include/profile/impl/profiler_node.h: Likewise. * include/profile/vector: Likewise. * include/profile/unordered_set: Likewise. * include/profile/map.h: Likewise. * include/profile/map: Likewise. * testsuite/21_strings/basic_string/numeric_conversions/ wchar_t/dr1261.cc: Likewise. * testsuite/21_strings/basic_string/numeric_conversions/ char/dr1261.cc: Likewise. * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise. 2012-02-20 Paolo Carlini PR libstdc++/52241 * src/c++98/tree.cc (local_Rb_tree_increment, local_Rb_tree_decrement): Add. (_Rb_tree_increment(const _Rb_tree_node_base*), _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter. (_Rb_tree_increment(_Rb_tree_node_base*), _Rb_tree_decrement(_Rb_tree_node_base*)): New. 2012-02-20 Paolo Carlini PR libstdc++/52309 * include/bits/hashtable_policy.h (_Equality_base<, true,>:: _M_equal(const _Hashtable&)): Compare values with operator==. * testsuite/23_containers/unordered_set/operators/52309.cc: New. 2012-02-17 Benjamin Kosnik PR libstdc++/51798 continued. * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for __atomic_, not __sync. * configure: Regenerated. 2012-02-17 Benjamin Kosnik PR libstdc++/47058 * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New. (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS * configure.ac: Use it. * fragment.am: Set WERROR_FLAG conditionally on --disable-werror. * configure: Regenerate. * python/Makefile.in: Same. * Makefile.in: Same. * doc/Makefile.in: Same. * include/Makefile.in: Same. * po/Makefile.in: Same. * python/Makefile.in: Same. * src/Makefile.in: Same. * src/c++11/Makefile.in: Same. * src/c++98/Makefile.in: Same. * testsuite/Makefile.in: Same. 2012-02-17 Rainer Orth PR libstdc++/52189 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle --enable-libstdcxx-threads. Disable on Solaris 8/9 with symbol versioning. * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after GLIBCXX_ENABLE_SYMVERS. * configure: Regenerate. * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain. 2012-02-15 DJ Delorie * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo. 2012-02-15 Benjamin Kosnik PR libstdc++/51368 * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New. * configure.ac: Use it. * python/Makefile.am: Same. * configure: Regenerate. * python/Makefile.in: Regenerate. * Makefile.in: Same. * doc/Makefile.in: Same. * include/Makefile.in: Same. * po/Makefile.in: Same. * src/Makefile.in: Same. * src/c++11/Makefile.in: Same. * src/c++98/Makefile.in: Same. * testsuite/Makefile.in: Same. 2012-02-14 Jonathan Wakely * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin. 2012-02-14 Tom Tromey * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new tests. * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__): Rewrite. (Tr1HashtableIterator.update): Remove. (Tr1HashtableIterator.next): Rewrite. 2012-02-13 Benjamin Kosnik * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers. * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same. 2012-02-13 Richard Henderson PR libstdc++/51798 continued. * include/bits/shared_ptr_base.h (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load outside compare_exchange loop. * include/tr1/shared_ptr.h: Same. * include/parallel/compatibility.h (__compare_and_swap_32): Use strong version of compare_exchange. (__compare_and_swap_64): Same. * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same. * libsupc++/guard.cc (__cxa_guard_acquire): Same. 2012-02-10 Benjamin Kosnik Jonathan Wakely PR libstdc++/51798 continued. * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_* builtins instead of __sync_* builtins for atomic functionality. * include/bits/shared_ptr_base.h: Same. * include/parallel/compatibility.h: Same. * include/profile/impl/profiler_state.h: Same. * include/tr1/shared_ptr.h: Same. * libsupc++/eh_ptr.cc: Same. * libsupc++/eh_throw.cc: Same. * libsupc++/eh_tm.cc: Same. * libsupc++/guard.cc: Same. * configure: Regenerated. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers. * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same. 2012-02-10 Rainer Orth PR libstdc++/51296 * config/os/osf/ctype_base.h, config/os/osf/ctype_configure_char.cc, config/os/osf/ctype_inline.h, config/os/osf/error_constants.h: Copy from config/os/generic. * config/os/osf/os_defines.h: Likewise. (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC): Define. * configure.host : Use os/osf for os_include_dir. 2012-02-10 Uros Bizjak * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated. 2012-02-09 Jonathan Wakely * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute. 2012-02-08 Jonathan Wakely * doc/xml/manual/status_cxx2011.xml: Update C++11 status table. 2012-02-07 Benjamin Kosnik * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1. * doc/xml/manual/documentation_hacking.xml: Update. 2012-02-07 Jonathan Wakely * testsuite/30_threads/call_once/39909.cc: Remove duplicate target selector. * testsuite/30_threads/call_once/49668.cc: Likewise. * testsuite/30_threads/call_once/call_once1.cc: Likewise. * testsuite/30_threads/lock_guard/cons/1.cc: Likewise. * testsuite/30_threads/mutex/cons/1.cc: Likewise. * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/mutex/lock/1.cc: Likewise. * testsuite/30_threads/mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/mutex/unlock/1.cc: Likewise. * testsuite/30_threads/unique_lock/cons/1.cc: Likewise. * testsuite/30_threads/unique_lock/cons/2.cc: Likewise. * testsuite/30_threads/unique_lock/cons/3.cc: Likewise. * testsuite/30_threads/unique_lock/cons/4.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/1.cc: Likewise. * testsuite/30_threads/unique_lock/locking/2.cc: Likewise. * testsuite/30_threads/unique_lock/locking/3.cc: Likewise. * testsuite/30_threads/unique_lock/locking/4.cc: Likewise. * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise. * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise. 2012-02-07 Jonathan Wakely PR libstdc++/51296 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept. * src/c++11/condition_variable.cc (condition_variable): Use macro for initializer function. PR libstdc++/51906 * config/os/bsd/darwin/os_defines.h: Disable static initializer for recursive mutexes. 2012-02-06 Jonathan Wakely PR libstdc++/52128 * src/c++11/future.cc: Add explicit instantiation. 2012-02-06 François Dumont * include/debug/safe_iterator.h (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive creation of a _Safe_iterator instance to do the check. 2012-02-05 Jonathan Wakely PR libstdc++/52104 * include/std/future (__future_base::_Async_state_common): Define destructor inline for targets without TLS. * src/c++11/future.cc (__future_base::_Async_state_common): Only define destructor for TLS targets. 2012-02-05 Jonathan Wakely PR libstdc++/51956 * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to... (SharedPointerPrinter): This. Also show weak count. * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New. 2012-02-05 Jonathan Wakely * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to PASS instead of XFAIL. 2012-02-05 Jeffrey Yasskin Paolo Carlini PR libstdc++/52119 * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior. 2012-02-03 Benjamin Kosnik PR libstdc++/49445 * testsuite/29_atomics/atomic/cons/49445.cc: Add. 2012-02-03 Benjamin Kosnik PR libstdc++/51811 * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets. * testsuite/29_atomics/atomic/operators/51811.cc: New. * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New. 2012-02-03 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. 2012-02-02 Benjamin Kosnik PR libstdc++/52068 * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES, libc__11_la_SOURCES): Remove. * src/c++11/Makefile.in: Regenerate. * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES, libc__98_la_SOURCES): Remove. * src/c++98/Makefile.in: Regenerate. 2012-02-01 Jonathan Wakely PR libstdc++/49204 * include/std/future (__future_base::_State_base::wait()): Use lambda expression for predicate and remove redundant test. (__future_base::_State_base::wait_for()): Return future_status and use lambda expression for predicate. (__future_base::_State_base::wait_until()): Likewise. (__basic_future::wait_for(), __basic_future::wait_until()): Likewise. (__future_base::_Async_state): Replace with _Async_state_common class for non-dependent functionality and _Async_state_impl class template for dependent functionality. (__future_base::_Async_state_common::_M_join): Serialize attempts to join thread. (__future_base::_Async_state_common::_M_run_deferred): Join. (__future_base::_Async_state::_M_do_run): Replace with lambda. * src/c++11/future.cc (__future_base::_Async_state_common): Define destructor, so key function is in the library. * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common. * testsuite/30_threads/packaged_task/members/get_future.cc: Expect future_status return instead of bool. * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise. * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise. * testsuite/30_threads/future/members/wait_until.cc: Likewise. * testsuite/30_threads/future/members/wait_for.cc: Likewise. * testsuite/30_threads/promise/members/set_value2.cc: Likewise. * testsuite/30_threads/promise/members/set_value3.cc: Likewise. * testsuite/30_threads/promise/members/swap.cc: Likewise. 2012-01-30 Tom Tromey PR libstdc++/51649: * testsuite/libstdc++-prettyprinters/debug.cc: New file. * testsuite/lib/gdb-test.exp (regexp-test): New proc. (note-test): Update. (gdb-test): Handle regexp tests. Add some logging. * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0. (placeholder, use): Remove. (main): Add tests for deque, list, map, and set iterators. Add tests for slist and slist iterator. * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7 namespace. * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use the type's _Node typedef. (StdListIteratorPrinter.to_string): Change how node type is computed. (StdSlistPrinter.children): Use the type's _Node typedef. (StdSlistIteratorPrinter.to_string): Likewise. (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type typedef. (StdMapPrinter.children): Change how the node's type is computed. (StdSetPrinter.children): Likewise. (StdForwardListPrinter.children): Use the type's _Node typedef. (Printer.add_version): New method. (Printer.add_container): New method. (build_libstdcxx_dictionary): Handle __7 and __cxx1998 namespaces. (find_type): New function. 2012-01-27 Paolo Carlini PR libstdc++/51795 * include/bits/random.h (linear_congruential_generator): Add static_assert preventing instantiation for values of 'a' and 'm' currently handled incorrectly by _Mod::__calc. * include/bits/random.tcc (seed_seq::generate): Avoid unsafe uses of _Mod::__calc. 2012-01-27 Jakub Jelinek PR libstdc++/51798 * config/cpu/generic/atomicity_builtins/atomicity.h (__exchange_and_add, __atomic_add): Use __atomic_fetch_add with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add. * include/ext/atomicity.h (__exchange_and_add, __atomic_add): Likewise. 2011-01-27 Rafael Avila de Espindola * libsupc++/typeinfo: Correctly match #pragma GCC visibility pop with #pragma GCC visibility push. 2012-01-27 Benjamin Kosnik Matthias Klose * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0. * configure.in: Regenerated. * src/Makefile.am (all-once, install-data-once): New rules. (all-local, install-data-local): Use them. (build-debug, install-debug): Tweak. * src/Makefile.in: Regenerate. 2012-01-27 Richard Henderson * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL. (ATOMIC_FLAG_INIT): Initialize with 0, not false. (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL. 2012-01-26 Jakub Jelinek PR bootstrap/51985 * src/c++98/Makefile.am (libc__98_la_SOURCES, libc__98convenience_la_SOURCES): Remove $(inst_sources). * src/c++98/Makefile.in: Regenerated. 2012-01-25 Richard Sandiford * testsuite/20_util/system_clock/1.cc: Add dg-require-time. * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise. * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise. * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise. * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add dg-require-fileio. * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise. * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise. * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc: Likewise. * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise. 2012-01-25 Matthias Klose * testsuite/30_threads/condition_variable_any/requirements: Remove empty directory. 2012-01-23 Benjamin Kosnik * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy. * src/Makefile.in: Regenerate. 2012-01-23 Benjamin Kosnik PR libstdc++/49829 Add libc++98convenience.la, libc++11convenience.la. * src/c++98: New directory. * src/c++11: New directory. * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11. * configure: Regenerated. * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS. * Makefile.in: Regenerate. * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for -fno-implicit-templates. * libsupc++/Makefile.in: Regenerate. * src/Makefile.am (inst_sources): Move... C++11 files into separate directory for libstdc++11convenience.la. Files are: fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc). (sources): Move C++11 files. Files are: compatibility-c++0x.cc, compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc, functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc, system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc, mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc. (libstdc++convenience.la): Add new target. (SUBDIRS): Add c++11, c++98. * src/Makefile.in: Regenerate. * src/c++11/Makefile.am: New. * src/c++11/Makefile.in: Generate. * src/c++98/Makefile.am: New, C++98 files. * src/c++98/Makefile.in: Generate. 2012-01-23 Rainer Orth libstdc++-v3: * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on 32-bit Solaris 10/x86. * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise. 2012-01-21 Jonathan Wakely PR libstdc++/50982 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors. 2012-01-19 Jakub Jelinek PR libstdc++/51845 * include/bits/hashtable.h (_Hashtable<>::erase(const_iterator, const_iterator)): Also update _M_buckets[__n_bkt] if __is_bucket_begin. * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc: New test. 2012-01-18 Benjamin Kosnik * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting. 2012-01-18 Benjamin Kosnik * configure.ac: Move epub checks... * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use test -f instead of AC_CHECK_FILES. 2012-01-18 François Dumont Roman Kononov PR libstdc++/51866 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)): Do not keep a reference to a potentially moved instance. * testsuite/23_containers/unordered_multiset/insert/51866.cc: New. * testsuite/23_containers/unordered_multimap/insert/51866.cc: New. 2012-01-17 Benjamin Kosnik * doc/html/*: Regenerate. 2012-01-17 Benjamin Kosnik * configure.ac (BUILD_EPUB): Adjust for epub3. * configure: Regenerate. * Makefile.in: Same. * doc/Makefile.am (stamp-epub-docbook): Update for epub3. * doc/Makefile.in: Regenerate. * include/Makefile.in: Same. * libsupc++/Makefile.in: Same. * po/Makefile.in: Same. * python/Makefile.in: Same. * src/Makefile.in: Same. * testsuite/Makefile.in: Same. * doc/xml/manual/documentation_hacking.xml: Update. 2012-01-17 Rainer Orth PR target/47852 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS. 2012-01-14 Jonathan Wakely * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments. 2012-01-13 François Dumont * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as base class of ... (_Hash_node, _Hash_node): ... those. * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index by _M_before_begin. Review implementation so that we do not need to look for previous non-empty bucket when inserting nodes. 2012-01-09 Kai Tietz PR libstc++/51673 part 2 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete operators signature for LLP64 size_t, and adjusted signatures for mt-allocator using size_t. 2012-01-09 Benjamin Kosnik PR libstc++/51673 part 1 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols with gnu.ver. 2012-01-09 Benjamin Kosnik * fragment.am (WARN_CXXFLAGS): Add -Wabi. * Makefile.in: Regenerate. * doc/Makefile.in: Same. * include/Makefile.in: Same. * libsupc++/Makefile.in: Same. * src/Makefile.in: Same. * testsuite/Makefile.in: Same. * po/Makefile.in: Same. * python/Makefile.in: Same. 2012-01-08 Jonathan Wakely * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add. * testsuite/libstdc++-prettyprinters/cxx11.cc: New. 2012-01-06 Jason Merrill * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust expected demangling. 2012-01-06 Jonathan Wakely PR libstdc++/51504 * doc/xml/manual/debug.xml: Suggest using symbol interposition to override symbols using annotation macros. 2012-01-05 François Dumont * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()): protected rather than private, use it... * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here. * testsuite/23_containers/unordered_set/observers.cc: New. * testsuite/23_containers/unordered_multiset/observers.cc: New. * testsuite/23_containers/unordered_map/observers.cc: New. * testsuite/23_containers/unordered_multimap/observers.cc: New. 2012-01-03 François Dumont * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more specific _Hashtable_ebo_helper. Hide this implementation detail thanks to private inheritance. 2012-01-03 Paolo Carlini PR c++/51738 * testsuite/23_containers/map/element_access/39901.cc: New.