| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
| |
PR libstdc++/50119
* include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
_OutputIterator, input_iterator_tag)): Fix.
* testsuite/25_algorithms/copy_n/50119.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177871 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* include/std/future: constexpr functions are implicitly inline.
* include/std/chrono: Likewise.
* include/std/complex: Likewise.
* include/bits/move.h: Likewise.
* include/bits/stl_pair.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177679 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* include/bits/alloc_traits.h: Fix doxygen @headername.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177546 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
2011-08-06 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Add scoped_allocator.
* include/debug/safe_sequence.h: Fix doxygen markup.
* include/debug/safe_unordered_base.h: Same.
* include/debug/safe_local_iterator.tcc: Same.
* include/debug/safe_unordered_container.h: Same.
* include/std/valarray: Same.
* include/std/iomanip: Same.
* include/std/streambuf: Same.
* include/std/bitset: Same.
* include/std/fstream: Same.
* include/std/functional: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/scoped_allocator: Same.
* include/std/sstream: Same.
* include/parallel/multiway_merge.h: Same.
* include/parallel/base.h: Same.
* include/parallel/for_each_selectors.h: Same.
* include/parallel/multiway_mergesort.h: Same.
* include/parallel/search.h: Same.
* include/parallel/partial_sum.h: Same.
* include/parallel/queue.h: Same.
* include/parallel/sort.h: Same.
* include/parallel/random_number.h: Same.
* include/ext/vstring.h: Same.
* include/ext/algorithm: Same.
* include/ext/pb_ds/assoc_container.h: Same.
* include/ext/bitmap_allocator.h: Same.
* include/ext/stdio_filebuf.h: Same.
* include/ext/memory: Same.
* include/ext/functional: Same.
* include/bits/basic_ios.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/gslice.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_heap.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_pair.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_numeric.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_uninitialized.h: Same.
* include/bits/ptr_traits.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/stl_iterator_base_funcs.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/regex.h: Same.
* include/bits/range_access.h: Same.
* include/bits/random.h: Same.
* include/bits/alloc_traits.h: Same.
* include/bits/regex_error.h: Same.
* include/bits/locale_facets_nonio.h: Same.
* include/bits/stl_relops.h: Same.
* include/backward/auto_ptr.h: Same.
* libsupc++/initializer_list: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust line numbers.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
Same.
* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177542 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* src/atomic.cc: Use noexcept.
* include/std/atomic: Likewise.
* include/bits/atomic_0.h: Likewise.
* include/bits/atomic_2.h: Likewise.
* include/bits/atomic_base.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177413 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
PR libstdc++/49925
* include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
with std::.
* include/bits/shared_ptr_base.h (__make_shared): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176985 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Nathan Ridge <zeratul976@hotmail.com>
PR libstdc++/49836
* include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
Declare.
(vector<>::push_back(const value_type&)): Use it.
* include/bits/vector.tcc: Define.
(vector<>::emplace_back(_Args&&...)): Use it.
* testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
Add.
* testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
* testsuite/23_containers/deque/modifiers/push_back/49836.cc:
Likewise.
* testsuite/23_containers/deque/modifiers/push_front/49836.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176761 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
_M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176718 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176717 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Daniel Krugler <daniel.kruegler@googlemail.com>
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176672 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
PR libstdc++/48430
* include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
__hash_base.
* include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176405 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176174 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176078 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* include/bits/stl_construct.h: Update Copyright years.
* include/bits/stl_uninitialized.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175309 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175305 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Paolo Carlini <paolo.carlini@oracle.com>
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175277 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
noexcept.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175057 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175039 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* include/std/functional: Use noexcept.
* include/bits/stl_tempbuf.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175026 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Paolo Carlini <paolo.carlini@oracle.com>
* 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<bool>::_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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174967 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
instead of <limits>.
* include/bits/allocator.h: Likewise.
* include/std/chrono (duration_values<>::min): Call lowest, not min.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174805 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174802 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174756 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174708 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
* include/bits/ptr_traits.h (pointer_traits): Fix typos.
* include/ext/pointer.h (pointer_traits): Add partial specialization
for _Pointer_adapter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174661 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174525 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174479 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174464 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174443 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174380 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174295 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
* include/bits/stl_queue.h: Use noexcept per the FDIS.
* include/bits/stl_stack.h: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174254 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* include/bits/random.h (random_device::min, max): Specify constexpr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174219 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/c++config (_GLIBCXX_NOTHROW): Update for noexcept.
* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
line number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174107 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/streambuf_iterator.h: Use noexcept per the FDIS.
(istreambuf_iterator<>::istreambuf_iterator(const
istreambuf_iterator&), ~istreambuf_iterator()): Add defaulted
in C++0x mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174094 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* include/bits/unique_ptr.h: Use noexcept per the FDIS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174004 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/char_traits.h: Use noexcept throughout.
* include/std/typeindex: Likewise.
* include/std/tuple (_Tuple_impl<>_Tuple_impl(_Tuple_impl&&)): Use
noexcept; adjust callers.
* include/bits/stl_pair.h (pair<>::pair(pair<>&&)): Use noexcept.
* testsuite/20_util/tuple/cons/noexcept_move_construct.cc: New.
* testsuite/20_util/pair/cons/noexcept_move_construct.cc: Likewise.
* testsuite/20_util/pair/noexcept_swap.cc: Likewise.
* testsuite/20_util/pair/noexcept_move_assign.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
line numbers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173986 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173917 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173882 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173871 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/std/utility (get(std::pair<>&&)): Add.
* include/bits/stl_pair.h (pair::swap(pair&),
swap(pair<>&, pair<>&)): Use noexcept.
* include/bits/random.h (discard_block_engine<>::base,
independent_bits_engine<>::base, shuffle_order_engine<>::base,
random_device::entropy): Use noexcept.
* include/std/array: Use noexcept where appropriate.
(get(array<>&&)): Add.
* testsuite/23_containers/array/requirements/get.cc: New.
* testsuite/20_util/pair/get.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-error
line number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173798 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/c++config (_GLIBCXX_NOEXCEPT, _GLIBCXX_USE_NOEXCEPT):
Add.
* include/std/limits: Use the latter everywhere.
(numeric_limits<char16_t>, numeric_limits<char32_t>): Simplify
macro usages, the specializations exist only in C++0x mode.
* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
line number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173774 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/move.h (move_if_noexcept): Add.
* testsuite/20_util/move_if_noexcept/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/move_if_noexcept/1.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173044 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/48635 (again)
* include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(unique_ptr<>&&),
unique_ptr<_Tp[]>::unique_ptr(unique_ptr<>&&),
unique_ptr<>::operator=(unique_ptr<>&&),
unique_ptr<_Tp[]>::operator=(unique_ptr<>&&)): Use forward<_Ep>, not
forward<_Dp>, to forward the deleter.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172619 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/48631
* include/bits/unique_ptr.h (default_delete<_Tp[]>): Add deleted
function call operator.
* testsuite/20_util/default_delete/48631_neg.cc: New.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
line numbers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172534 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/48635
* include/bits/unique_ptr.h (unique_ptr<>::operator=(unique_ptr&&),
unique_ptr<>::operator=(unique_ptr<>&&),
unique_ptr<_Tp[],>::operator=(unique_ptr&&),
unique_ptr<_Tp[],>::operator=(unique_ptr<>&&)): Forward the deleter
instead of moving it.
* testsuite/20_util/unique_ptr/assign/48635.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172532 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
PR libstdc++/48398
* include/bits/unique_ptr.h (__tuple_type): Store pointer type.
* testsuite/20_util/unique_ptr/modifiers/48398.cc: New.
* testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Remove
unused parameter name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171894 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/random.h (negative_binomial_distribution<>::
negative_binomial_distribution(_IntType, double),
negative_binomial_distribution<>::
negative_binomial_distribution(const param_type&)): Tweak
construction of _M_gd.
* include/bits/random.tcc (negative_binomial_distribution<>::
operator()): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171443 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/random.h (negative_binomial_distribution<>::
negative_binomial_distribution(_IntType, double),
negative_binomial_distribution<>::
negative_binomial_distribution(const param_type&)): Fix
construction of _M_gd.
* include/bits/random.tcc (negative_binomial_distribution<>::
operator()): Fix computation, per Leger's algorithm.
* testsuite/util/testsuite_random.h (discrete_pdf,
negative_binomial_pdf, poisson_pdf, uniform_int_pdf): New.
(binomial_pdf): Swap last two parameters.
* testsuite/26_numerics/random/discrete_distribution/
operators/values.cc: New.
* testsuite/26_numerics/random/negative_binomial_distribution/
operators/values.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/
operators/values.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/
operators/values.cc: Likewise.
* testsuite/26_numerics/random/binomial_distribution/
operators/values.cc: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171411 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/bits/shared_ptr.h (operator>, operator<=, operator>=): Add,
per DR 1401.
(operator==, operator!=, operator<): Fix per the letter of DR 1401.
* include/bits/shared_ptr_base.h: Likewise for __shared_ptr.
* include/bits/unique_ptr.h (operator==, operator!=, operator<,
operator<=, operator>, operator>=): Fix per the letter of DR 1401.
* testsuite/20_util/shared_ptr/comparison/dr1401.cc: New.
* testsuite/20_util/unique_ptr/comparison/dr1401.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171293 138bc75d-0d04-0410-961f-82ee72b054a4
|