+2011-12-04 Markus Trippelsdorf <markus@trippelsdorf.de>
+ Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/bits/stl_heap.h (pop_heap): Check for non-empty range in
+ overload taking a predicate.
+ * testsuite/25_algorithms/pop_heap/empty2_neg.cc: New.
+
+2011-12-03 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/debug/macros.h (__glibcxx_check_non_empty_range): Define.
+ * include/debug/debug.h (__glibcxx_requires_non_empty_range): Define.
+ * include/debug/formatter.h (__msg_non_empty_range): Add.
+ * src/debug.cc: Message text for __msg_non_empty_range.
+ * include/bits/stl_heap.h (pop_heap): Check for non-empty range.
+ * testsuite/25_algorithms/pop_heap/empty_neg.cc: New.
+
+2011-12-03 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * doc/xml/manual/utilities.xml: Remove outdated text.
+
+2011-12-02 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * include/std/iomanip (put_money): Fix thinko, use __err local,
+ like in, eg, basic_ostream::_M_insert.
+
+2011-11-30 Benjamin Kosnik <bkoz@redhat.com>
+
+ * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove
+ size-specific macros. _GLIBCXX_ATOMIC_BUILTINS_1,
+ _GLIBCXX_ATOMIC_BUILTINS_2, _GLIBCXX_ATOMIC_BUILTINS_4,
+ _GLIBCXX_ATOMIC_BUILTINS_8. Use _GLIBCXX_ATOMIC_BUILTINS to
+ indicate use of C++11 atomic builtins.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * include/Makefile.am (bits_sup_headers): Add atomic_lockfree_defines.h.
+ * include/Makefile.in: Regenerate.
+ * libsupc++/Makefile.am: Compile C++11 support with -std=gnu++0x.
+ * libsupc++/Makefile.in: Regenerate.
+
+ * include/bits/atomic_base.h: Move lock-free property macros...
+ * libsupc++/atomic_lockfree_defines.h: ...here.
+ * include/std/future: Use C++11 macros.
+ * libsupc++/eh_ptr.cc: Same.
+ * libsupc++/eh_throw.cc: Same.
+ * libsupc++/exception: Same.
+ * libsupc++/exception_ptr.h: Same.
+ * libsupc++/guard.cc: Same.
+ * libsupc++/nested_exception.cc: Same.
+ * libsupc++/nested_exception.h: Same.
+ * src/future.cc: Same.
+
+ * include/ext/atomicity.h: Use _GLIBCXX_ATOMIC_BUILTINS.
+
+ * doc/doxygen/user.cfg.in
+ * doc/xml/manual/concurrency_extensions.xml
+
+ * testsuite/18_support/exception_ptr/lifespan.cc
+ * testsuite/lib/libstdc++.exp
+
+2011-11-29 François Dumont <fdumont@gcc.gnu.org>
+
+ * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Remove code
+ useless now that the hashtable implementation put the hash code in
+ cache if the hash functor throws.
+ * testsuite/23_containers/unordered_set/erase/1.cc: Enhance test by
+ checking also distance between begin and end iterators to validate
+ underlying data model.
+ * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
+ * testsuire/23_containers/unordered_map/erase/1.cc: Likewise.
+ * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
+ * testsuite/23_containers/unordered_multiset/erase/2.cc: New.
+ * testsuite/23_containers/unordered_multimap/erase/2.cc: New.
+
+2011-11-28 Andrew MacLeod <amacleod@redhat.com>
+
+ * include/bits/atomic_base.h (ATOMIC_*_LOCK_FREE): Use new cpp
+ predefined macros.
+ * testsuite/29_atomics/headers/atomic/macros.cc: Add BOOL and POINTER
+ macro checks. Check for expected compile time values.
+
+2011-11-28 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/51288
+ * include/std/iomanip (get_money, put_money): Use sentry.
+ * testsuite/27_io/manipulators/extended/get_money/char/51288.cc: New.
+ * testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
+ Likewise.
+ * testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
+ Likewise.
+ * testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
+ Likewise.
+
+2011-11-27 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/xml/manual/using.xml (Prerequisites): Refer to x86 instead
+ of i386.
+
+2011-11-27 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * scripts/run_doxygen (problematic): Change Linux reference to
+ GNU/Linux.
+
+2011-11-26 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/xml/manual/abi.xml (Prerequisites): Refer to GNU/Linux.
+ Fix reference to GCC.
+
+2011-11-26 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ PR libstdc++/51296
+ * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
+ on alpha*-*-osf*.
+ * testsuite/30_threads/future/cons/constexpr.cc: Disable debug
+ symbols.
+ * testsuite/30_threads/shared_future/cons/constexpr.cc: Likewise.
+
+2011-11-23 François Dumont <fdumont@gcc.gnu.org>
+
+ PR libstdc++/41975
+ * include/bits/hashtable.h (_Hashtable<>): Major data model
+ modification to limit performance impact of empty buckets in
+ erase(iterator) implementation.
+ * include/bits/hashtable_policy.h (_Hashtable_iterator,
+ _Hashtable_const_iterator): Remove not used anymore.
+ * include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
+ _M_grow_factor, just use natural evolution of prime numbers. Add
+ _M_prev_size to know when the number of buckets can be reduced.
+ * include/bits/unordered_set.h (__unordered_set<>,
+ __unordered_multiset<>), unordered_map.h (__unordered_map<>,
+ __unordered_multimap<>): Change default value of cache hash code
+ template parameter, false for integral types with noexcept hash
+ functor, true otherwise.
+ * include/debug/unordered_map, unordered_set: Adapt transformation
+ from iterator/const_iterator to respectively
+ local_iterator/const_local_iterator.
+ * testsuite/performance/23_containers/copy_construct/unordered_set.cc:
+ New.
+ * testsuite/23_containers/unordered_set/instantiation_neg.cc: New.
+ * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: New.
+ * testsuite/23_containers/unordered_multiset/cons/copy.cc: New.
+ * testsuite/23_containers/unordered_multiset/erase/1.cc,
+ 24061-multiset.cc: Add checks on the number of bucket elements.
+ * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc,
+ multiset_single.cc, multiset_single_move.cc: Likewise.
+
+2011-11-21 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/std/functional (is_placeholder, is_bind_expression): Add
+ partial specializations for cv-qualified types.
+ * include/tr1/functional (is_placeholder, is_bind_expression): Add
+ partial specializations for std::bind and std::placeholders and for
+ cv-qualified types.
+ * testsuite/20_util/bind/cv_quals_3.cc: New.
+ * testsuite/tr1/3_function_objects/bind/cv_quals.cc: New.
+ * testsuite/tr1/3_function_objects/bind/mixed.cc: New.
+
+2011-11-21 Andreas Tobler <andreast@fgznet.ch>
+
+ * configure: Regenerate.
+
+2011-11-21 Daniel Krugler <daniel.kruegler@googlemail.com>
+
+ PR libstdc++/51185
+ * include/std/type_traits (__is_base_to_derived_ref,
+ __is_lvalue_to_rvalue_ref): Fix.
+ * testsuite/20_util/is_constructible/51185.cc: New.
+ * testsuite/20_util/is_constructible/value-2.cc: Extend.
+ * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
+ line number.
+ * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
+ Likewise.
+ * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc
+ Likewise.
+
+2011-11-21 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * include/std/tuple (__conv_types, __one_by_one_convertible,
+ __all_convertible): Remove.
+ (tuple<>::tuple(_UElements&&...),
+ tuple<>::tuple(const tuple<_UElements...>&),
+ tuple<>::tuple(tuple<_UElements...>&&)): Remove wa for c++/48322.
+ * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
+ line number.
+
+2011-11-20 Jason Merrill <jason@redhat.com>
+
+ PR c++/48322
+ * include/std/tuple (tuple(_UElements&&...)): Fix SFINAE.
+
+ * testsuite/20_util/bind/ref_neg.cc: Adjust error markings.
+
+2011-11-20 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/backward/binders.h: Fix examples in doxygen comments and
+ suggest using std::bind instead.
+
+2011-11-20 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * doc/xml/manual/status_cxx2011.xml: Fix docbook markup.
+
+2011-11-20 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * doc/xml/manual/appendix_contributing.xml: Do not use "here" as link
+ text.
+ * doc/xml/faq.xml: Likewise. Do not request standard library issues
+ to be reported to the libstdc++ mailing list.
+ * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
+ behaviour.
+ * doc/xml/manual/status_cxxtr1.xml: Likewise.
+ * doc/xml/manual/utilities.xml: Fix grammar, probably caused by a
+ global search and replace of "part" by "chapter".
+ * doc/xml/manual/shared_ptr.xml: Remove outdated information.
+ * doc/xml/manual/messages.xml: Be more specific about systems where
+ using 'int' for catalog handle is not a problem, mention LWG issue.
+
+2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * include/debug/bitset (operator[](size_t) const): Declare constexpr.
+ * include/profile/bitset: Likewise.
+ * testsuite/23_containers/bitset/operations/constexpr.cc: Split out
+ non portable bits to...
+ * testsuite/23_containers/bitset/operations/constexpr-2.cc: ... here.
+
+2011-11-18 Harti Brandt <hartmut.brandt@dlr.de>
+
+ PR libstdc++/51209
+ * include/bits/hashtable.h (_Hashtable<>::_M_find_node): Return
+ nullptr when no node is found.
+ * include/tr1/hashtable.h (_Hashtable<>::_M_find_node): Return
+ zero when no node is found.
+
+2011-11-18 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * src/hash-long-double-aux.cc: Rename to...
+ * src/hash-long-double-tr1-aux.cc: ... this.
+ * src/compatibility-ldbl.cc: Adjust.
+ * src/hash_tr1.cc: Likewise.
+ * src/hash_c++0x.cc: Don't use src/hash-long-double-aux.cc.
+ * include/bits/functional_hash.h (hash<_Tp*>::operator(), specs
+ for integer types, hash<float>::operator(), hash<double>::operator(),
+ hash<long double>::operator()): Declare noexcept.
+ * include/debug/bitset (hash<__debug::bitset>::operator()): Likewise.
+ * include/debug/vector (hash<__debug::vector>::operator()): Likewise.
+ * include/std/system_error (hash<error_code>::operator()): Likewise.
+ * include/std/thread (hash<thread::id>::operator()): Likewise.
+ * include/std/bitset (hash<bitset>::operator()): Likewise.
+ * include/std/typeindex (hash<type_index>::operator()): Likewise.
+ * include/profile/bitset (hash<__profile::vector>::operator()):
+ Likewise.
+ * include/profile/vector (hash<__profile::vector>::operator()):
+ Likewise.
+ * include/ext/vstring.h (hash<__vstring>::operator(),
+ hash<__wvstring>::operator(), hash<__u16vstring>::operator(),
+ hash<__u32vstring>::operator()): Likewise.
+ * include/bits/shared_ptr.h (hash<shared_ptr>::operator()): Likewise.
+ * include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()):
+ Likewise.
+ * include/bits/unique_ptr.h (hash<unique_ptr>::operator()): Likewise.
+ * include/bits/basic_string.h (hash<string>::operator(),
+ hash<wstring>::operator(), hash<u16string>::operator(),
+ hash<u32string>::operator()): Likewise.
+ * include/bits/vector.tcc (hash<vector>::operator()): Likewise.
+ * include/bits/stl_bvector.h (hash<vector>::operator()): Likewise.
+ * libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of
+ throw().
+
+2011-11-17 Richard Henderson <rth@redhat.com>
+
+ PR libstdc++/51181
+ * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use
+ of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4.
+
+2011-11-18 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
+ on darwin.
+
+2011-11-17 Jason Merrill <jason@redhat.com>
+
+ * testsuite/21_strings/basic_string/cons/char/moveable2.cc
+ (tstring): Add defaulted move assignment.
+ * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc
+ (tstring): Add defaulted move assignment.
+ * testsuite/util/testsuite_tr1.h (NoexceptMoveConsClass): Add
+ defaulted move assignment operator.
+ (NoexceptMoveAssignClass): Add defaulted move constructor.
+
+2011-11-17 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
+ and ios_base::failure.
+ * doc/xml/manual/backwards_compatibility.xml: List headers in
+ alphabetical order.
+
+2011-11-16 Andrew MacLeod <amacleod@redhat.com>
+
+ PR libstdc++/51102
+ * include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE,
+ ATOMIC_POINTER_LOCK_FREE): New. Add missing macros.
+
+2011-11-15 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/51142
+ * include/debug/unordered_map (unordered_map<>::erase(iterator),
+ unordered_multimap<>::erase(iterator)): Add, consistently with
+ LWG 2059.
+ * include/debug/unordered_set (unordered_set<>::erase(iterator),
+ unordered_multiset<>::erase(iterator)): Likewise.
+ * include/debug/map.h (map<>::erase(iterator)): Likewise.
+ * include/debug/multimap.h (multimap<>::erase(iterator)): Likewise.
+ * include/profile/map.h (map<>::erase(iterator)): Likewise.
+ * include/profile/multimap.h (multimap<>::erase(iterator)): Likewise.
+ * include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise.
+ * include/bits/stl_map.h (map<>::erase(iterator)): Likewise.
+ * include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise.
+ * include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise.
+ * testsuite/23_containers/unordered_map/erase/51142.cc: New.
+ * testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
+ * testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
+ * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
+ * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
+ * testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
+ * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
+ * testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.
+
+2011-11-15 Jason Dick <dickphd@gmail.com>
+
+ PR libstdc++/51133
+ * include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix
+ wrong sign in recursion relation.
+
+2011-11-14 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr,
+ not viable anyway due to the pointer parameter.
+
+2011-11-13 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * include/c_global/cmath (atan2, fmod, pow, copysign, fdim,
+ fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify
+ constraining on the return type.
+ * include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot,
+ nextafter, remainder, remquo): Likewise.
+
+2011-11-13 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * using.xml: Use GNU/Linux.
+
+2011-11-12 Jason Merrill <jason@redhat.com>
+
+ PR c++/51060
+ * testsuite/25_algorithms/max/1.cc (test01): Drop references.
+ * testsuite/25_algorithms/min/1.cc (test01): Drop references.
+ * testsuite/25_algorithms/minmax/1.cc (test01): Drop references.
+
+2011-11-12 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ PR libstdc++/51083
+ * include/ext/type_traits.h (__promote): Only define __type member
+ for integral and floating point types, to prevent math functions
+ participating in overload resolution for other types.
+ (__promote_2, __promote_3, __promote_4): Use __promote in default
+ template argument values, so deduction only succeeds for integral and
+ floating point types.
+ * testsuite/26_numerics/cmath/51083.cc: New.
+ * testsuite/26_numerics/complex/51083.cc: New.
+ * testsuite/tr1/8_c_compatibility/cmath/51083.cc: New.
+ * testsuite/tr1/8_c_compatibility/complex/51083.cc: New.
+
+2011-11-10 Andrew MacLeod <amacleod@redhat.com>
+
+ PR middle-end/51038
+ * include/bits/atomic_base.h (atomic_thread_fence): Call built-in.
+ (atomic_signal_fence): Call built-in.
+ (test_and_set, clear): Call new atomic built-ins.
+
+2011-11-09 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create
+ the new object with the same allocator.
+ * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: New.
+
+2011-11-09 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/profile/unordered_map: Add missing copy constructors.
+ * include/profile/unordered_set: Likewise.
+
2011-11-09 Dodji Seketeli <dodji@redhat.com>
PR c++/51027