X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=libstdc%2B%2B-v3%2FChangeLog;h=30b954e4a38b491dc8f9097113211aacfce7ad4f;hp=8a211bf42b828ff17afd8c17248332379f136e0e;hb=5d25efc0fd72fef10dbc606561fade95f2c99a88;hpb=18861b9e86e161d92c7570f9e2e7b1a5efcf6def diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 8a211bf42b8..30b954e4a38 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,985 @@ +2011-07-24 François Dumont + + * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use + __builtin_floor rather than __builtin_ceil to compute next resize + value. + * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc: + New. + +2011-07-22 Benjamin Kosnik + Daniel Krugler + + * include/bits/move.h (move, forward): Mark constexpr. + * include/bits/stl_pair.h (pair): Mark move ctors constexpr. + * testsuite/20_util/pair/make_pair/constexpr.cc: New. + * testsuite/20_util/pair/cons/constexpr.cc: Add tests. + +2011-07-22 Ian Lance Taylor + + * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed. + * Makefile.in: Rebuild. + * doc/Makefile.in: Rebuild. + * include/Makefile.in: Rebuild. + * libsupc++/Makefile.in: Rebuild. + * po/Makefile.in: Rebuild. + * python/Makefile.in: Rebuild. + * src/Makefile.in: Rebuild. + * testsuite/Makefile.in: Rebuild. + +2011-07-21 Benjamin Kosnik + + * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move... + * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here. + * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move... + * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here. + * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move... + * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here. + * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move... + * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here. + + * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move... + * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here. + * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move... + * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here. + * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move... + * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here. + * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move... + * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here. + + * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move. + * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here. + * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc: + Move... + * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here. + * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move... + * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here. + * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc: + Move... + * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here. + + * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move... + * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here. + * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move... + * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here. + + * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move... + * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here. + * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move... + * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here. + +2011-07-21 François Dumont + + * include/debug/safe_unordered_sequence.h, + safe_unordered_sequence.tcc: Rename respectively in... + * include/debug/safe_unordered_container.h, + safe_unordered_container.tcc: ...those. _Safe_unordered_sequence + rename _Safe_unordered_container. + * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base + rename _Safe_unordered_container_base. + * include/debug/unordered_map, unordered_set: Adapt to previous + modifications. + * config/abi/pre/gnu.ver: Likewise. + * src/debug.cc: Likewise. + * include/Makefile.am: Likewise. + * include/Makefile.in: Regenerate. + +2011-07-21 Paolo Carlini + + * include/std/mutex (timed_mutex, recursive_timed_mutex): Update + to use steady_clock instead of monotonic_clock. + * config/abi/pre/gnu.ver: Export steady_clock::now. + +2011-07-20 Benjamin Kosnik + Daniel Krugler + + * include/std/array (array::at, array::operator[]): Mark constexpr. + * testsuite/23_containers/array/requirements/ + constexpr_element_access.cc: Add. + +2011-07-20 Benjamin Kosnik + Daniel Krugler + + * include/std/chrono: (system_clock::is_steady): Update to N3291 + from is_monotonic. + (time_point): Mark nonmember arithmetic operators constexpr. + * src/chrono.cc: Modify for above. + * src/compatibility-c++0x.cc: Same. + * testsuite/20_util/time_point/nonmember/constexpr.cc: New. + * testsuite/20_util/time_point/1.cc: Modify. + * testsuite/20_util/system_clock/constexpr_data.cc: Modify. + * testsuite/20_util/system_clock/1.cc: Modify. + * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to... + * testsuite/20_util/steady_clock/constexpr_data.cc: ...here. + * testsuite/30_threads/condition_variable/members/2.cc: Modify. + * testsuite/30_threads/condition_variable_any/members/2.cc: Modify. + +2011-07-20 Paolo Carlini + + * include/std/system_error: Use noexcept. + * src/system_error.cc: Likewise. + * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust. + * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise. + * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise. + * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise. + * testsuite/util/testsuite_error.h: Likewise. + + * include/std/system_error (error_code::error_code(_ErrorCodeEnum)): + Use enable_if on template parameter default. + (error_condition::error_condition(_ErrorConditionEnum)): Likewise. + +2011-07-20 Ed Smith-Rowland <3dw4rd@verizon.net> + + * include/precompiled/stdc++.h: Add scoped_allocator. + +2011-07-20 Benjamin Kosnik + + * include/std/bitset (operator[]): Make constexpr. + * testsuite/23_containers/bitset/operations/constexpr.cc: New. + +2011-07-20 Paolo Carlini + + * include/debug/safe_local_iterator.h (_Safe_local_iterator<>:: + _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)): + Fix typo. + +2011-07-19 François Dumont + + * include/debug/safe_unordered_base.h, safe_unordered_sequence.h, + safe_unordered_sequence.tcc, safe_local_iterator.h, + safe_local_iterator.tcc: New, support for unordered sequence safe + local iterators. + * include/Makefile.am: Add previous files. + * include/Makefile.in: Regenerate. + * include/debug/unordered_map, unordered_set: Implement + _Safe_unordered_sequence and expose _Safe_local_iterator. + * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor + _Safe_iterator::_M_get_distance static method to expose it as + __get_distance function and use it in _Safe_local_iterator type. + * include/debug/formatter.h: Add __msg_local_iter_compare_bad + _Debug_msg_id enum entry to notify invalid comparison between local + iterators from different buckets. Add _Parameter constructor from + _Safe_local_iterator. + * include/debug/functions.h: Add __valid_range overload for + _Safe_local_iterator. + * src/debug.cc: Add _Safe_unordered_sequence_base and + _Safe_local_iterator_base methods implementations. + * config/abi/pre/gnu.ver: Add export of some + _Safe_unordered_sequence_base and _Safe_local_iterator_base methods. + * testsuite/util/debug/checks.h: Add use_invalid_iterator function to + simulate use of a singular iterator. + * testsuite/util/debug/unordered_checks.h: New, several functions + to simulate classic invalid usage of unordered sequence local + iterators. + * testsuite/23_containers/unordered_map/debug/ + use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, + use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, + invalid_local_iterator_compare_neg.cc: New. + * testsuite/23_containers/unordered_multimap/debug/ + use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, + use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, + invalid_local_iterator_compare_neg.cc: New. + * testsuite/23_containers/unordered_set/debug/ + use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, + use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, + invalid_local_iterator_compare_neg.cc: New. + * testsuite/23_containers/unordered_multiset/debug/ + use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, + use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, + invalid_local_iterator_compare_neg.cc: New. + +2011-07-18 Paolo Carlini + + PR libstdc++/48430 + * include/bits/shared_ptr.h (struct hash>): Use + __hash_base. + * include/bits/unique_ptr.h (struct hash>): Likewise. + +2011-07-18 Rainer Orth + + * crossconfig.m4 (*-netware): Remove. + * configure: Regenerate. + +2011-07-15 Yufeng Zhang + + * config/locale/newlib/ctype_members.cc: New file. + * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale + kind: newlib. Configure to use the newlib specific + ctype_members.cc when with_newlib is enabled. + * configure: Regenerate. + +2011-07-15 Paolo Carlini + Jakub Jelinek + + PR libstdc++/49745 + * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for + _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK. + * libsupc++/guard.cc: Include . + * testsuite/17_intro/headers/c++1998/49745.cc: New. + * configure: Regenerate. + * config.h.in: Likewise. + +2011-07-11 Paolo Carlini + + PR libstdc++/49559 + * include/bits/stl_algo.h (__move_merge_backward): Remove. + (__move_merge_adaptive, __move_merge_adaptive_backward): New. + (__merge_adaptive): Use the latter two. + (__rotate_adaptive): Avoid self move-assignment. + * include/bits/stl_algobase.h (move_backward): Fix comment. + * testsuite/25_algorithms/stable_sort/49559.cc: New. + * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise. + * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend. + * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise. + * testsuite/util/testsuite_rvalref.h (rvalstruct::operator= + (rvalstruct&&)): Check for self move-assignment. + +2011-07-11 Paolo Carlini + + * testsuite/util/testsuite_allocator.h (propagating_allocator<>:: + operator=(const propagating_allocator<>&)): Retun *this. + +2011-07-09 Jonathan Wakely + + * include/Makefile.am: Add new header. + * include/Makefile.in: Regenerate. + * include/std/scoped_allocator: New. + * doc/xml/manual/status_cxx200x.xml: Update. + * testsuite/20_util/scoped_allocator/1.cc: New. + * testsuite/20_util/scoped_allocator/propagation.cc: New. + * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New. + * testsuite/20_util/scoped_allocator/requirements/ + explicit_instantiation.cc: New. + +2011-07-09 Jonathan Wakely + + * include/bits/stl_vector.h: Use new allocator model in C++0x mode. + * include/bits/vector.tcc: Likewise. + * testsuite/util/testsuite_allocator.h (propagating_allocator): Define. + * testsuite/23_containers/vector/allocator/copy_assign.cc: New. + * testsuite/23_containers/vector/allocator/noexcept.cc: New. + * testsuite/23_containers/vector/allocator/copy.cc: New. + * testsuite/23_containers/vector/allocator/swap.cc: New. + * testsuite/23_containers/vector/allocator/move_assign.cc: New. + * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: + Adjust dg-error line numbers. + * 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. + +2011-07-09 Jonathan Wakely + + * include/ext/alloc_traits.h (__allocator_always_compares_equal): New + trait, provide partial specializations for known allocators. + (__alloc_traits::construct, __alloc_traits::destroy): Overload for + non-standard pointer types. + (__alloc_traits::_S_always_equal): New trait for use with noexcept. + (__alloc_traits::_S_nothrow_move): Likewise. + (__alloc_traits::_S_nothrow_swap): Likewise. + +2011-07-09 Jonathan Wakely + + * include/ext/cast.h: Fix typo in include guard. + * include/ext/pointer.h (_Unqualified_type): Remove redundant + partial specializations for volatile types. Fix typos in comments. + (pointer_traits<_Pointer_adaptor>::pointer_to): Define. + +2011-07-09 Jonathan Wakely + + PR libstdc++/49668 + * include/std/functional (__bind_simple): Define. + * include/std/future (_Task_setter): Parameterize by type of result + pointer instead of state object. + (_S_task_setter): Type deduction helper. + (_Task_state): Use _S_task_setter and __bind_simple. + (_Deferred_state, _Async_state): Store call wrapper directly not as + std::function. Use _S_task_setter and __bind_simple. + (_S_make_deferred_state, _S_make_async_state): Type deduction helpers. + (async): Use new functions and __bind_simple. + * include/std/mutex (call_once): Use __bind_simple. + * include/std/thread (thread): Likewise. Remove unused headers. + * src/thread.cc: Add header. + * testsuite/30_threads/async/49668.cc: New. + * testsuite/30_threads/call_once/49668.cc: New. + * testsuite/30_threads/thread/cons/49668.cc: New. + * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool. + +2011-07-08 Rainer Orth + + * configure.host (abi_baseline_subdir_switch): Describe. + Provide default. + (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override. + * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute + baseline_subdir_switch. + * testsuite/Makefile.am (site.exp): Emit it. + (baseline_subdir): Use it. + * testsuite/libstdc++-abi/abi.exp: Use it. + * configure: Regenerate. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + * include/Makefile.in: Regenerate. + * libsupc++/Makefile.in: Regenerate. + * po/Makefile.in: Regenerate. + * python/Makefile.in: Regenerate. + * src/Makefile.in: Regenerate. + * testsuite/Makefile.in: Regenerate. + +2011-06-29 François Dumont + + * include/debug/set.h, unordered_map, multiset.h, forward_list, + unordered_set, vector, deque, string, list, multimap.h: Remove + base class default constructor calls. + * include/debug/map.h: Likewise and cleanup several redefinition of + base iterator typedef. + +2011-06-29 Nathan Sidwell + + * libsupc++/eh_arm.c (__cxa_type_match): Construct address of + thrown object here. Return succeded_with_ptr_to_base for all + pointer cases. + +2011-06-23 Jonathan Wakely + + * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for + C++0x mode. + * testsuite/25_algorithms/sort/35588.cc: Likewise. + * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise. + +2011-06-22 Jonathan Wakely + + * testsuite/20_util/bind/socket.cc: Use variable and remove attribute. + +2011-06-22 Paolo Carlini + + * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall + warning. + +2011-06-22 Paolo Carlini + + * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings. + * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise. + * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise. + * testsuite/20_util/allocator_traits/members/allocate_hint.cc: + Likewise. + * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. + * testsuite/20_util/bind/socket.cc: Likewise. + * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise. + * testsuite/util/testsuite_random.h: Likewise. + +2011-06-22 Jonathan Wakely + + * include/Makefile.am: Add alloc_traits.h headers. + * include/Makefile.in: Regenerate. + * include/std/memory: Include uses_allocator.h explicitly. + * include/bits/allocator.h (allocator_traits): Move to ... + * include/bits/alloc_traits.h: New header. + * include/ext/alloc_traits.h (__alloc_traits): Extension to provide + a common allocator interface for C++98 and C++0x. + * include/bits/stl_construct.h: Use __alloc_traits. + * include/bits/stl_uninitialized.h: Likewise. + +2011-06-22 Daniel Krugler + Paolo Carlini + + * include/bits/move.h (__is_nothrow_swappable): Add. + (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept. + * include/bits/algorithmfwd.h: Adjust. + * testsuite/25_algorithms/swap/noexcept.cc: New. + +2011-06-21 Jakub Jelinek + + * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add + check-DEJAGNUnormal[4-9]. + (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4. + * testsuite/Makefile.in: Regenerated. + +2011-06-20 Daniel Krugler + Paolo Carlini + + * include/std/tuple (__conv_types, __one_by_one_convertible, + __all_convertible): Add. + (tuple): Use the latter. + (tuple<_T1>): Remove. + * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error + line number. + * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise. + +2011-06-14 Jonathan Wakely + + * include/bits/ptr_traits.h (pointer_traits::pointer_to): Use + noexcept. + +2011-06-14 Paolo Carlini + + * include/std/valarray (~valarray): Use noexcept. + * include/bits/unique_ptr.h (~unique_ptr): Likewise. + * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New. + * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc: + Likewise. + * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc: + Likewise. + * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc: + Likewise. + +2011-06-14 Paolo Carlini + + * include/std/functional: Use noexcept. + * include/bits/stl_tempbuf.h: Likewise. + +2011-06-12 François Dumont + Paolo Carlini + + * include/bits/allocator.h (__shrink_to_fit): Rename to + __shrink_to_fit_aux, fix. + * include/bits/stl_vector.h (_M_shrink_to_fit): Declare. + (shrink_to_fit): Use the latter. + * include/debug/vector (shrink_to_fit): Likewise. + * include/bits/vector.tcc (_M_shrink_to_fit): Define. + * include/bits/stl_deque.h (_M_shrink_to_fit): Declare. + (shrink_to_fit): Use the latter. + * include/debug/deque (shrink_to_fit): Likewise. + * include/bits/deque.tcc (_M_shrink_to_fit): Define. + * include/bits/vector.tcc (vector::_M_reallocate): Add. + * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare. + (shrink_to_fit): Use the latter. + (reserve): Use _M_reallocate, move inline. + (_Bvector_base<>::_S_nword): Add, use it throughout. + * include/debug/string (shrink_to_fit): Redo. + * include/ext/vstring.h (shrink_to_fit): Optimize. + * include/bits/basic_string.h (shrink_to_fit): Likewise. + * testsuite/21_strings/debug/shrink_to_fit.cc: New. + * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise. + * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc: + Likewise. + * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc: + Likewise. + * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise. + +2011-06-11 Jonathan Wakely + + * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for + C++0x mode. + * testsuite/25_algorithms/sort/35588.cc: Likewise. + * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise. + +2011-06-11 Jonathan Wakely + + * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x + mode by overloading to take allocator's pointer type. + * testsuite/23_containers/vector/ext_pointer/types/2.cc: New. + * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/ + 2.cc: New. + +2011-06-11 Jonathan Wakely + + * testsuite/20_util/allocator_traits/requirements/ + explicit_instantiation.cc: Add another instantiation. + +2011-06-11 Jonathan Wakely + + * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check + for allocator_type and value_type. + +2011-06-11 Jonathan Wakely + + * testsuite/30_threads/packaged_task/uses_allocator.cc: New. + * testsuite/30_threads/promise/uses_allocator.cc: Likewise. + +2011-06-10 Paolo Carlini + + * include/ext/throw_allocator.h: Use noexcept. + * include/ext/pool_allocator.h: Likewise. + * include/ext/bitmap_allocator.h: Likewise. + * include/ext/new_allocator.h: Likewise. + * include/ext/malloc_allocator.h: Likewise. + * include/ext/array_allocator.h: Likewise. + * include/ext/mt_allocator.h: Likewise. + * include/ext/extptr_allocator.h: Likewise. + * testsuite/util/testsuite_allocator.h: Likewise; do not include + directly, include instead. + +2011-06-10 Benjamin Kosnik + + * include/ext/pb_ds/*: Doxygen markup redo. + * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp. + * include/Makefile.in: Regenerate. + +2011-06-10 Jason Merrill + + * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines. + + * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors, + fix dg-error markup. + +2011-06-09 Jason Merrill + + * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust. + + * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes. + * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors. + * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise. + * testsuite/20_util/forward/1_neg.cc: Likewise. + * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise. + * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise. + * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise. + * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise. + * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc: + Likewise. + * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise. + * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise. + * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc: + Likewise. + * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise. + * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise. + * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc: + Likewise. + * testsuite/tr1/2_general_utilities/shared_ptr/assign/ + auto_ptr_rvalue_neg.cc: Likewise. + * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc: + Likewise. + * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise. + * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: + Likewise. + * testsuite/23_containers/deque/requirements/dr438/ + constructor_1_neg.cc: Likewise. + * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: + Likewise. + * testsuite/23_containers/forward_list/requirements/dr438/ + assign_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/forward_list/requirements/dr438/ + insert_neg.cc: Likewise. + * testsuite/23_containers/list/requirements/dr438/ + assign_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. + * testsuite/23_containers/list/requirements/dr438/ + insert_neg.cc: Likewise. + * testsuite/23_containers/vector/requirements/dr438/ + assign_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/vector/requirements/dr438/ + insert_neg.cc: Likewise. + * testsuite/23_containers/map/operators/1_neg.cc: Likewise. + * testsuite/29_atomics/atomic_integral/operators/ + bitwise_neg.cc: Likewise. + * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise. + * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise. + * testsuite/decimal/operator_neg.cc: Likewise. + +2011-06-09 Simon Baldwin + + * scripts/extract_symvers.in: Handle processor/OS specific or + unknown symbol binding strings from readelf. + +2011-06-09 Paolo Carlini + + * include/std/type_traits (__is_copy_assignable_impl, + __is_nt_copy_assignable_impl): Fix typo. + +2011-06-08 Paolo Carlini + + * include/ext/extptr_allocator.h: Include + instead of . + * include/bits/allocator.h: Likewise. + + * include/std/chrono (duration_values<>::min): Call lowest, not min. + +2011-06-08 Paolo Carlini + + * 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 + + * 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 + + * 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 + + 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 + + * include/bits/move.h (move_if_noexcept): Use __and_ and __not_. + +2011-06-05 Jonathan Wakely + + * 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 + + * 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 + + * 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 + + * 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 + + * doc/xml/manual/status_cxx200x.xml: Update. + * doc/html/*: Regenerate. + +2011-05-30 Paolo Carlini + + * 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 + + * include/std/tuple: Restore is_convertible constraint. + * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove. + +2011-05-30 Paolo Carlini + + PR libstdc++/49236 + * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning + line number. + +2011-05-30 Jonathan Wakely + + * 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 + + * testsuite/20_util/pointer_traits/pointer_to.cc: Fix. + +2011-05-28 Jonathan Wakely + + * 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 + + * testsuite/20_util/pointer_traits/pointer_to.cc: New. + +2011-05-28 Jonathan Wakely + + * include/Makefile.am: Add new ptr_traits.h header. + * include/Makefile.in: Regenerate. + * include/bits/ptr_traits.h (pointer_traits): New. + * include/bits/allocator.h (allocator_traits): Add. + * include/ext/array_allocator.h (construct, destroy): Update C++0x + versions. + * include/ext/bitmap_allocator.h (construct, destroy): Likewise. + * include/ext/extptr_allocator.h (construct, destroy): Likewise. + * include/ext/malloc_allocator.h (construct, destroy): Likewise. + * include/ext/mt_allocator.h (construct, destroy): Likewise. + * include/ext/new_allocator.h (construct, destroy): Likewise. + * include/ext/pool_allocator.h (construct, destroy): Likewise. + * include/ext/throw_allocator.h (construct, destroy): Likewise. + * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New. + * testsuite/20_util/allocator_traits/requirements/ + explicit_instantiation.cc: New. + * testsuite/20_util/allocator_traits/members/max_size.cc: New. + * testsuite/20_util/allocator_traits/members/select.cc: New. + * testsuite/20_util/allocator_traits/members/construct.cc: New. + * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New. + * testsuite/20_util/allocator_traits/members/destroy.cc: New. + * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New. + * testsuite/20_util/pointer_traits/requirements/ + explicit_instantiation.cc: New. + +2011-05-28 Jonathan Wakely + + * include/std/future (launch): Update enumerators and define + operators required for bitmask type. Remove trailing whitespace. + * src/future.cc: Remove trailing whitespace. + * testsuite/30_threads/async/any.cc: Adjust. + * testsuite/30_threads/async/sync.cc: Adjust. + * testsuite/30_threads/async/launch.cc: New. + +2011-05-28 Jonathan Wakely + + * include/std/future: Use noexcept. + * src/future.cc: Likewise. + +2011-05-27 Jonathan Wakely + + * include/std/thread (this_thread::sleep_until): Move after sleep_for. + +2011-05-27 Paolo Carlini + + PR libstdc++/49187 + * include/parallel/losertree.h: Add missing using declarations + of _Base::_M_comp. + * include/parallel/algobase.h: Include . + * include/parallel/multiway_merge.h: Include , forward declare __merge_advance. + * include/parallel/multiseq_selection.h: Don't include here. + * include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp: Fix + qualification of upper_bound. + + * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: + Use dg-require-debug-mode. + * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: + Likewise. + * testsuite/ext/pb_ds/regression/priority_queue_rand_debug.cc: + Likewise. + * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: + Likewise. + * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: + Likewise. + * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc: + Likewise. + * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc: + Likewise. + * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: + Likewise. + * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: + Likewise. + + * include/parallel/algo.h: Minor uglification fixes. + +2011-05-26 Paolo Carlini + + * src/list.cc: Use noexcept per the FDIS. + * src/compatibility-list-2.cc: Likewise. + * 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/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/vector: Likewise. + * include/profile/unordered_set: Likewise. + * include/profile/map.h: Likewise. + * include/profile/deque: Likewise. + * include/profile/list: Likewise. + * include/profile/multimap.h: Likewise. + * include/bits/hashtable.h: Likewise. + * include/bits/stl_list.h: Likewise. + * include/bits/stl_map.h: Likewise. + * include/bits/hashtable_policy.h: Likewise. + * include/bits/stl_set.h: Likewise. + * include/bits/forward_list.h: Likewise. + * include/bits/stl_multimap.h: Likewise. + * include/bits/stl_vector.h: Likewise. + * include/bits/stl_deque.h: Likewise. + * include/bits/stl_multiset.h: Likewise. + * include/bits/stl_bvector.h: Likewise. + * include/bits/stl_tree.h: Likewise. + 2011-05-25 Paolo Carlini * include/bits/stl_queue.h: Use noexcept per the FDIS. @@ -677,7 +1659,7 @@ 2011-05-19 Paolo Carlini * include/std/tuple (tuple<>::operator=(tuple&&)): Specify as - noexcept. + noexcept. (__get_helper): Likewise. (_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise. * include/bits/move.h (swap): Likewise. @@ -1370,8 +2352,8 @@ 2011-03-31 Jeffrey Yasskin - * libsupc++/exception_ptr.h: Forward-declare std::type_info. - * libsupc++/nested_exception.h (__throw_with_nested): Remove a + * libsupc++/exception_ptr.h: Forward-declare std::type_info. + * libsupc++/nested_exception.h (__throw_with_nested): Remove a redundant default argument from std::__throw_with_nested. 2011-03-31 Paolo Carlini