+2011-12-23 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/bits/regex.h (match_results::size_type): Use
+ allocator_traits.
+
+2011-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ PR libstdc++/48362
+ * testsuite/libstdc++-prettyprinters/48362.cc: New.
+
+2011-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ PR libstdc++/48362
+ * python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle empty
+ tuples.
+
+2011-12-20 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ PR libstdc++/51365
+ * include/std/tuple (_Tuple_impl): Check __is_final as well as
+ is_empty.
+ * testsuite/20_util/tuple/51365.cc: New.
+
+2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
+
+ * libsupc++/eh_tm.cc (free_any_cxa_exception): Use
+ __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.
+
+2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/performance/25_algorithms/search_n.cc: Disambiguate
+ local variable.
+
+2011-12-18 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * doc/xml/manual/iterators.xml: Replace "sect1" with "section".
+ * doc/xml/manual/algorithms.xml: Likewise.
+ * doc/html/manual/iterators.html: Likewise.
+ * doc/html/manual/algorithms.html: Likewise.
+
+2011-12-15 Paolo Carlini <paolo.carlini@oracle.com>
+ Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ PR libstdc++/51558
+ * include/bits/functional_hash.h (struct hash): Add static_assert.
+ * src/compatibility-c++0x.cc: Adjust compatibility definitions.
+ * testsuite/23_containers/unordered_map/erase/51142.cc: Adjust.
+ * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
+ * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
+ * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
+
+2011-12-15 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/22_locale/num_put/put/char/9780-2.cc: Add test for "C"
+ locale, add sanity checks in case of grouping.
+
+2011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ PR libstdc++/51540
+ * include/bits/stl_numeric.h (partial_sum): Adjust doxygen comments.
+
+2011-12-12 Paolo Carlini <paolo.carlini@oracle.com>
+
+ Revert:
+ 2011-12-12 Kai Tietz <ktietz@redhat.com>
+
+ PR libstdc++/51135
+ * libsupc++/cxxabi.h (__cxa_dtor_type): New type.
+ (__cxa_throw): Use it for destructor-argument.
+ * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
+ * libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
+ exceptionDestructor to __cxa_dtor_type.
+ * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
+ Define.
+ (__cxa_dtor_type): Declare target secific type variant.
+ * config/os/mingw32/os_defines.h: Likewise.
+
+2011-12-12 Kai Tietz <ktietz@redhat.com>
+
+ PR libstdc++/51135
+ * libsupc++/cxxabi.h (__cxa_dtor_type): New type.
+ (__cxa_throw): Use it for destructor-argument.
+ * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
+ * libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
+ exceptionDestructor to __cxa_dtor_type.
+ * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
+ Define.
+ (__cxa_dtor_type): Declare target secific type variant.
+ * config/os/mingw32/os_defines.h: Likewise.
+
+2011-12-11 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * doc/xml/manual/abi.xml: Replace gcc-x.y.z with GCC x.y.z or x.y,
+ remove excessive duplication of version information.
+ * doc/html/*: Regenerate.
+
+2011-12-10 Benjamin Kosnik <bkoz@redhat.com>
+
+ * doc/doxygen/user.cfg.in: Add macros, directories.
+ * include/bits/locale_classes.h: Remove doxygen warnings, fix markup.
+ * include/bits/locale_classes.tcc: Same.
+ * include/bits/shared_ptr.h: Same.
+ * include/bits/stl_algo.h: Same.
+ * include/bits/stl_list.h: Same.
+ * include/bits/stl_numeric.h: Same.
+ * include/debug/safe_base.h: Same.
+ * include/parallel/equally_split.h: Same.
+ * include/std/bitset: Same.
+ * include/std/complex: Same.
+ * include/std/fstream: Same.
+ * include/std/istream: Same.
+ * include/std/ostream: Same.
+ * include/tr2/dynamic_bitset: Same.
+ * scripts/run_doxygen: Remove munging for names that no longer exist.
+
+ * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
+ Adjust line numbers.
+ * testsuite/23_containers/list/requirements/dr438/
+ constructor_1_neg.cc: Same.
+ * testsuite/23_containers/list/requirements/dr438/
+ constructor_2_neg.cc: Same.
+ * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
+
+2011-12-10 François Dumont <fdumont@gcc.gnu.org>
+
+ * include/profile/unordered_set: Minor formatting changes.
+ (unordered_set<>::_M_profile_destruct,
+ unordered_multiset<>::_M_profile_destruct): Fix implementation to not
+ rely on normal implementation details anymore.
+ (unordered_set<>::_M_profile_resize,
+ unordered_multiset<>::_M_profile_resize): Implement consistently
+ accross all unordered containers.
+ (unordered_set<>::emplace, unordered_set<>::emplace_hint,
+ unordered_multiset<>::emplace, unordered_multset<>::emplace_hint): Add
+ to signal rehash to profiling system.
+ * include/profile/unordered_map: Likewise for unordered_map<> and
+ unordered_multimap<>.
+
+2011-12-09 François Dumont <fdumont@gcc.gnu.org>
+
+ PR libstdc++/44436 (unordered containers emplace, emplace_hint bits)
+ * include/bits/hashtable.h (_Hashtable<>::emplace,
+ _Hashtable<>::emplace_hint): Add.
+ * include/debug/unordered_set (unordered_set<>::emplace,
+ unordered_set<>::emplace_hint, unordered_multiset<>::emplace,
+ unordered_multiset<>::emplace_hint): Add.
+ * include/profile/unordered_set: Likewise.
+ * include/debug/unordered_map (unordered_map<>::emplace,
+ unordered_map<>::emplace_hint, unordered_multimap<>::emplace,
+ unordered_multimap<>::emplace_hint): Add.
+ * include/profile/unordered_map: Likewise.
+ * testsuite/23_containers/unordered_map/modifiers/emplace.cc: New.
+ * testsuite/23_containers/unordered_multimap/modifiers/emplace.cc:
+ New.
+ * testsuite/23_containers/unordered_set/modifiers/emplace.cc: New.
+ * testsuite/23_containers/unordered_multiset/modifiers/emplace.cc:
+ New.
+ * testsuite/util/testsuite_container_traits.h
+ (traits_base::has_emplace): Add and defined as std::true_type for
+ unordered containers.
+ * testsuite/util/exception/safety.h (emplace, emplace_hint): Add and
+ use them in basic_safety exception test case.
+ * doc/xml/manual/status_cxx2011.xml: Update unordered containers
+ status.
+
+2011-12-08 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/bits/atomic_base.h (__calculate_memory_order): Rename to...
+ (__cmpexch_failure_order): This, and rewrite as constexpr function.
+ (compare_exchange_strong, compare_exchange_weak): Use it.
+ * include/std/atomic (compare_exchange_strong, compare_exchange_weak):
+ Likewise.
+
+2011-12-07 François Dumont <fdumont@gcc.gnu.org>
+
+ PR libstdc++/51386
+ * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt):
+ Fix computation of _M_prev_resize so that hashtable do not keep on
+ being rehashed when _M_max_load_factor is lower than 1.
+
+2011-12-06 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/51438
+ * libsupc++/nested_exception.h (nested_exception::~nested_exception):
+ Declare noexcept.
+ * libsupc++/nested_exception.cc: Adjust.
+ * testsuite/18_support/nested_exception/51438.cc: New.
+ * testsuite/18_support/nested_exception/throw_with_nested.cc: Adjust.
+ * testsuite/18_support/nested_exception/rethrow_if_nested.cc:
+ Likewise.
+
+ * src/shared_ptr.cc: Use noexcept where appropriate.
+ * include/std/system_error: Likewise.
+ * include/std/functional: Likewise.
+ * include/bits/shared_ptr_base.h: Likewise.
+ * src/stdexcept.cc: Use _GLIBCXX_USE_NOEXCEPT where appropriate.
+ * include/std/stdexcept: Likewise.
+ * libsupc++/bad_cast.cc: Likewise.
+ * libsupc++/bad_typeid.cc: Likewise.
+ * libsupc++/eh_exception.cc: Likewise.
+ * libsupc++/typeinfo: Likewise.
+ * libsupc++/exception: Likewise.
+ * libsupc++/eh_ptr.cc: Likewise.
+ * libsupc++/bad_alloc.cc: Likewise.
+ * libsupc++/exception_ptr.h: Likewise.
+
+ * include/std/chrono: Use noexcept where appropriate.
+ * src/chrono.cc: Likewise.
+
+2011-12-06 Jonathan Wakely <jwakely.gcc@gmail.com>
+ Chris Jefferson <chris@bubblescope.net>
+
+ PR libstdc++/51183
+ * include/std/stl_pair.h (pair<>::__cons, pair<>::__do_cons): Remove.
+ (pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Only declare.
+ (pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)):
+ Declare.
+ * include/std/tuple (pair<>::__cons, pair<>::__do_cons): Remove.
+ (pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)):
+ Define.
+ (pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Define,
+ delegating to the latter.
+ * testsuite/20_util/pair/piecewise2.cc: New.
+
2011-12-05 Paolo Carlini <paolo.carlini@oracle.com>
* libsupc++/initializer_list: Do not declare anything if
Likewise.
2011-12-04 Markus Trippelsdorf <markus@trippelsdorf.de>
- Jonathan Wakely <jwakely.gcc@gmail.com>
+ Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/stl_heap.h (pop_heap): Check for non-empty range in
overload taking a predicate.
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
+ * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove
+ size-specific macros. _GLIBCXX_ATOMIC_BUILTINS_1,
+ _GLIBCXX_ATOMIC_BUILTINS_2, _GLIBCXX_ATOMIC_BUILTINS_4,
+ _GLIBCXX_ATOMIC_BUILTINS_8. Use _GLIBCXX_ATOMIC_BUILTINS to
+ indicate use of C++11 atomic builtins.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * include/Makefile.am (bits_sup_headers): Add atomic_lockfree_defines.h.
+ * include/Makefile.in: Regenerate.
+ * libsupc++/Makefile.am: Compile C++11 support with -std=gnu++0x.
+ * libsupc++/Makefile.in: Regenerate.
+
+ * include/bits/atomic_base.h: Move lock-free property macros...
+ * libsupc++/atomic_lockfree_defines.h: ...here.
+ * include/std/future: Use C++11 macros.
+ * libsupc++/eh_ptr.cc: Same.
+ * libsupc++/eh_throw.cc: Same.
+ * libsupc++/exception: Same.
+ * libsupc++/exception_ptr.h: Same.
+ * libsupc++/guard.cc: Same.
+ * libsupc++/nested_exception.cc: Same.
+ * libsupc++/nested_exception.h: Same.
+ * src/future.cc: Same.
+
+ * include/ext/atomicity.h: Use _GLIBCXX_ATOMIC_BUILTINS.
+
+ * doc/doxygen/user.cfg.in: Adjust.
+ * doc/xml/manual/concurrency_extensions.xml: Add note.
+
+ * testsuite/18_support/exception_ptr/lifespan.cc: Tweak.
+ * testsuite/lib/libstdc++.exp: Same.
2011-11-29 François Dumont <fdumont@gcc.gnu.org>