OSDN Git Service

2011-06-08 Paolo Carlini <paolo.carlini@oracle.com>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index 85b55b5..e456f59 100644 (file)
@@ -1,3 +1,272 @@
+2011-06-08  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/bits/allocator.h (__shrink_to_fit): Simplify.
+       * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
+       * include/bits/stl_deque.h: Likewise.
+       * include/bits/stl_bvector.h: Likewise.
+
+2011-06-07  Jason Merrill  <jason@redhat.com>
+
+       * testsuite/lib/prune.exp: s/required/instantiated/.
+       * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
+       * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
+       * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
+       * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
+       * testsuite/20_util/forward/1_neg.cc: Likewise.
+       * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
+       * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
+       Likewise.
+       * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
+       * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
+       * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
+       * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
+       * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
+       * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
+       * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
+       * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
+       * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
+       * testsuite/tr1/2_general_utilities/shared_ptr/assign/
+       shared_ptr_neg.cc: Likewise.
+
+2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/bits/move.h (struct __move_if_noexcept_cond): Add.
+       (move_if_noexcept): Use the latter.
+       * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
+       _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
+       * include/bits/stl_uninitialized.h
+       (__uninitialized_move_if_noexcept_a): Add.
+       * include/bits/vector.tcc (vector<>::reserve): Use
+       _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
+       (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
+       _M_range_insert): Use __uninitialized_move_if_noexcept_a.
+       * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
+       Add.
+       (copycounter::copycounter(copycounter&&)): Use noexcept.
+       * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
+       * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
+       Likewise.
+       * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
+       Likewise.
+
+2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR libstdc++/49293
+       * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
+       for glibc 2.14.
+       * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
+
+2011-06-06  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
+
+2011-06-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * include/bits/ptr_traits.h (pointer_traits): Fix typos.
+       * include/ext/pointer.h (pointer_traits): Add partial specialization
+       for _Pointer_adapter.
+
+2011-06-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
+       Update to C++0x definition using type to construct as template
+       parameter.
+       (tracker_allocator::destroy): Likewise for type to destroy.
+       (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
+
+2011-06-01  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
+       Use std::move on the allocator, use noexcept.
+       (_Hashtable<>::~_Hashtable): Use noexcept.
+       * include/bits/stl_list.h: Likewise.
+       * include/bits/forward_list.h: Likewise.
+       * include/bits/stl_vector.h: Likewise.
+       * include/bits/stl_bvector.h: Likewise.
+       * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
+       * include/bits/stl_set.h: Likewise.
+       * include/bits/stl_multimap.h: Likewise.
+       * include/bits/stl_multiset.h: Likewise.
+       * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
+       std::move on the allocator.
+       (_Rb_tree<>::~_Rb_tree): Use noexcept.
+       * include/bits/stl_deque.h: Likewise.
+       * include/bits/basic_string.h (basic_string<>::~basic_string): Use
+       noexcept.
+       * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
+       * include/debug/set.h: Adjust.
+       * include/debug/unordered_map: Likewise.
+       * include/debug/multiset.h: Likewise.
+       * include/debug/forward_list: Likewise.
+       * include/debug/vector: Likewise.
+       * include/debug/unordered_set: Likewise.
+       * include/debug/deque: Likewise.
+       * include/debug/map.h: Likewise.
+       * include/debug/string: Likewise.
+       * include/debug/list: Likewise.
+       * include/debug/multimap.h: Likewise.
+       * include/profile/set.h: Likewise.
+       * include/profile/unordered_map: Likewise.
+       * include/profile/multiset.h: Likewise.
+       * include/profile/forward_list: Likewise.
+       * include/profile/unordered_set: Likewise.
+       * include/profile/vector: Likewise.
+       * include/profile/deque: Likewise.
+       * include/profile/map.h: Likewise.
+       * include/profile/list: Likewise.
+       * include/profile/multimap.h: Likewise.
+       * testsuite/21_strings/basic_string/cons/wchar_t/
+       noexcept_move_construct.cc: New.
+       * testsuite/21_strings/basic_string/cons/char/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/unordered_map/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/multimap/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/set/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/unordered_multimap/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/forward_list/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/unordered_set/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/vector/bool/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/vector/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/multiset/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/list/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/unordered_multiset/cons/
+       noexcept_move_construct.cc: Likewise.
+       * testsuite/23_containers/map/cons/noexcept_move_construct.cc
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       assign_neg.cc: Adjust dg-error line numbers.
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       insert_neg.cc: Likewise.
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       constructor_1_neg.cc: Likewise.
+       * testsuite/23_containers/forward_list/requirements/dr438/
+       constructor_2_neg.cc: Likewise.
+       * testsuite/23_containers/vector/requirements/dr438/
+       assign_neg.cc: Likewise.
+       * testsuite/23_containers/vector/requirements/dr438/
+       insert_neg.cc: Likewise.
+       * testsuite/23_containers/vector/requirements/dr438/
+       constructor_1_neg.cc: Likewise.
+       * testsuite/23_containers/vector/requirements/dr438/
+       constructor_2_neg.cc: Likewise.
+       * testsuite/23_containers/deque/requirements/dr438/
+       assign_neg.cc: Likewise.
+       * testsuite/23_containers/deque/requirements/dr438/
+       insert_neg.cc: Likewise.
+       * testsuite/23_containers/deque/requirements/dr438/
+       constructor_1_neg.cc: Likewise.
+       * testsuite/23_containers/deque/requirements/dr438/
+       constructor_2_neg.cc: Likewise.
+       * testsuite/23_containers/list/requirements/dr438/
+       assign_neg.cc: Likewise.
+       * testsuite/23_containers/list/requirements/dr438/
+       insert_neg.cc: Likewise.
+       * testsuite/23_containers/list/requirements/dr438/
+       constructor_1_neg.cc: Likewise.
+       * testsuite/23_containers/list/requirements/dr438/
+       constructor_2_neg.cc: Likewise.
+
+       * include/bits/move.h (swap): Use __and_ in the noexcept.
+       * include/bits/algorithmfwd.h: Adjust.
+
+2011-05-31  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/bits/basic_string.h: Use noexcept per the FDIS (minus
+       compare(const string&), which uses char_traits::compare, which
+       isn't noexcept; also no noexcept in the move assignment operator
+       and move assign, see c++std-lib-30855).
+       * include/bits/basic_string.tcc: Likewise.
+       * include/ext/vstring.h: Likewise.
+       * include/ext/vstring.tcc: Likewise.
+       * include/debug/string: Likewise.
+
+2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * doc/xml/manual/status_cxx200x.xml: Update.
+       * doc/html/*: Regenerate.
+
+2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * include/std/type_traits (__or_, __and_): Add trivial definitions
+       for a single element.
+       * include/bits/stl_pair.h: Use __and_ in noexcept specs and
+       constraints.
+       (pair<>::pair(pair&&)): Define.
+       (pair<>::pair(const pair<>&)): Constrain with is_convertible.
+       (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
+       * include/std/tuple: Use __and_ in noexcept specs and constraints.
+       (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
+       _Tuple_impl&&)): Remove noexcept.
+       (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
+       tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
+       tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
+       * testsuite/20_util/tuple/moveable2.cc: Use = delete.
+       * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
+       Adjust dg-error line numbers.
+       * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
+       Likewise.
+       * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
+       * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
+       * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
+
+2011-05-31  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * include/std/tuple: Restore is_convertible constraint.
+       * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
+
+2011-05-30  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR libstdc++/49236
+       * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
+       line number.
+
+2011-05-30  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * include/std/tuple: Implement uses-allocator construction.
+       * include/bits/allocator.h (uses_allocator): Move to ...
+       * include/bits/uses_allocator.h: New file.
+       * include/Makefile.am: Add new header.
+       * include/Makefile.in: Regenerate.
+       * testsuite/20_util/uses_allocator/cons_neg.cc: New.
+       * testsuite/20_util/uses_allocator/construction.cc: New.
+       * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
+       * testsuite/20_util/tuple/cons/allocators.cc: New.
+
+2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
+
+2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
+       GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
+       * configure.ac: Use them. Increase minor version.
+       * configure: Regenerate.
+       * config.h.in: Regenerate.
+       * include/std/thread (thread::hardware_concurrency): Remove inline
+       definition.
+       * src/thread.cc (thread::hardware_concurrency): Define.
+       * config/abi/pre/gnu.ver: Export new symbol @3.4.17
+       * testsuite/util/testsuite_abi.cc: Add new version.
+       * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
+       * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
+       * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
+       dg-require-nprocs and verify hardware_concurrency returns non-zero.
+
+2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
+
+       * testsuite/20_util/pointer_traits/pointer_to.cc: New.
+
 2011-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
 
        * include/Makefile.am: Add new ptr_traits.h header.