tuple (tuple_element<__i, [...]): Add.
[gcc.git] / libstdc++-v3 / ChangeLog
index 9b99d8b43f55d9bee89c0356bff72c40c0f58e75..f6b9159d235ada73d7a04391fe0add686e72dc95 100644 (file)
@@ -1,3 +1,115 @@
+2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/std/tuple (tuple_element<__i, const _Tp>,
+       tuple_element<__i, volatile _Tp>, tuple_element<__i,
+       const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
+       tuple_size<const volatile _Tp>): Add.
+       * include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
+       * include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
+       * testsuite/20_util/tuple/cv_tuple_size.cc: New.
+       * testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
+       * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
+       line number.
+
+2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
+        noexcept.
+       (__get_helper): Likewise.
+       (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
+       * include/bits/move.h (swap): Likewise.
+       * include/bits/algorithmfwd.h (swap): Adjust.
+       * include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
+       * testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
+       mode, prefer delete to access control to make the type not copy
+       assignable.
+       * testsuite/util/testsuite_tr1.h: Add test classes.
+       * testsuite/20_util/tuple/noexcept_swap.cc: New.
+       * testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
+       * testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
+       delete to access control.
+       * testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
+       * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
+       line numbers.
+
+2011-05-19  Daniel Krugler  <daniel.kruegler@googlemail.com>
+
+       * testsuite/util/testsuite_tr1.h: Add test classes.
+       * testsuite/20_util/is_nothrow_assignable/value.cc: Add.
+
+2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/std/type_traits (is_assignable, is_copy_assignable,
+       is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
+       is_nothrow_move_assignable): Add; minor tweaks elsewhere.
+       (has_nothrow_copy_assign): Remove.
+       * testsuite/util/testsuite_tr1.h: Add test classes.
+       * testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
+       * testsuite/20_util/is_assignable/requirements/
+       explicit_instantiation.cc: Likewise.
+       * testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
+       * testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
+       Likewise.
+       * testsuite/20_util/is_nothrow_assignable/requirements/
+       explicit_instantiation.cc: Likewise.
+       * testsuite/20_util/is_move_assignable/value.cc: Likewise.
+       * testsuite/20_util/is_move_assignable/requirements/typedefs.cc:
+       Likewise.
+       * testsuite/20_util/is_move_assignable/requirements/
+       explicit_instantiation.cc: Likewise.
+       * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
+       * testsuite/20_util/is_copy_assignable/requirements/typedefs.cc:
+       Likewise.
+       * testsuite/20_util/is_copy_assignable/requirements/
+       explicit_instantiation.cc: Likewise.
+       * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
+       * testsuite/20_util/is_nothrow_move_assignable/requirements/
+       typedefs.cc: Likewise.
+       * testsuite/20_util/is_nothrow_move_assignable/requirements/
+       explicit_instantiation.cc: Likewise.
+       * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
+       * testsuite/20_util/is_nothrow_copy_assignable/requirements/
+       typedefs.cc: Likewise.
+       * testsuite/20_util/is_nothrow_copy_assignable/requirements/
+       explicit_instantiation.cc: Likewise.
+       * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
+       dg-error line numbers.
+       * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
+       Likewise.
+       * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
+
+2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * include/bits/shared_ptr_base.h: Use noexcept. Define special member
+       functions as defaulted/deleted.
+       * include/bits/shared_ptr.h: Use noexcept.
+       * 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
+       * 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
+
+2011-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * doc/xml/manual/bitmap_allocator.xml: Fix typos.
+
+2011-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * libsupc++/initializer_list: Use noexcept specifier.
+       (initializer_list<>::size, begin, end): Qualify as const.
+       * include/bits/move.h (__addressof, forward, move, addressof): Specify
+       as noexcept.
+       * include/std/bitset: Use noexcept specifier throughout.
+       * include/debug/bitset: Update.
+       * include/profile/bitset: Likewise.
+
+2011-05-17  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/std/tuple: Use noexcept where appropriate.
+       (tuple<>::swap): Rework implementation.
+       (_Head_base<>::_M_swap_impl): Remove.
+       (get(std::tuple<>&&)): Add.
+       * testsuite/20_util/tuple/element_access/get2.cc: New.
+       * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
+       line number.
+
 2011-05-16  Paolo Carlini  <paolo.carlini@oracle.com>
 
        * include/std/utility: Simplify the last commit, the whole