Jonathan Wakely
a58a38b32c
shared_ptr_base.h (_Sp_counted_ptr): Make 'final'.
...
* include/bits/shared_ptr_base.h (_Sp_counted_ptr): Make 'final'.
(_Sp_counted_deleter): Make 'final'. Use allocator_traits.
(_Sp_counted_ptr_inplace): Make 'final'. Use allocator_traits.
Derive from _Sp_counted_ptr instead of _Sp_counted_deleter to use EBO
for the allocator.
(__shared_count, __shared_ptr): Use allocator_traits.
* include/std/future (__future_base::_Result_alloc): Make 'final'. Use
allocator traits.
(__future_base::_Task_state): Make 'final'.
(__future_base::_Deferred_state): Likewise.
(__future_base::_Async_state): Likewise.
* testsuite/20_util/shared_ptr/cons/alloc_min.cc: New.
* testsuite/20_util/shared_ptr/creation/alloc_min.cc: New.
* testsuite/20_util/shared_ptr/creation/private.cc: New.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
* testsuite/30_threads/packaged_task/cons/alloc_min.cc: New.
* testsuite/30_threads/promise/cons/alloc_min.cc: New.
From-SVN: r181171
2011-11-08 16:45:54 +00:00
Rodolfo Lima
28de604e8c
shared_ptr.h (shared_ptr(unique_ptr&&), [...]): Remove explicit specifier (as per DR 925).
...
2010-03-19 Rodolfo Lima <rodolfo@rodsoft.org>
* include/bits/shared_ptr.h (shared_ptr(unique_ptr&&),
shared_ptr(auto_ptr&&)): Remove explicit specifier (as per DR 925).
* include/bits/shared_ptr_base.h: Likewise.
* testsuite/20_util/shared_ptr/creation/dr925.cc: New.
From-SVN: r157570
2010-03-19 13:32:05 +00:00
Jakub Jelinek
748086b7b2
Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
...
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Paolo Carlini
08df5d3e97
re PR libstdc++/36949 ([C++0x] make_shared does not initialize enable_shared_from_this' internal shared_count)
...
2008-07-28 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/36949
* include/tr1_impl/boost_shared_ptr.h
(__shared_ptr(_Sp_make_shared_tag, _Alloc, _Args&&...): Call
__enable_shared_from_this_helper.
* testsuite/20_util/shared_ptr/creation/36949.cc: New.
From-SVN: r138219
2008-07-28 23:28:16 +00:00
Paolo Carlini
395c9e79f0
3983-2.cc: Avoid -Wall warnings.
...
2008-01-31 Paolo Carlini <pcarlini@suse.de>
* testsuite/27_io/basic_istream/extractors_character/pod/3983-2.cc:
Avoid -Wall warnings.
* testsuite/22_locale/global_templates/user_facet_hierarchies.cc:
Likewise.
* testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
Likewise.
* testsuite/tr1/6_containers/hash/operators/size_t.cc: Likewise.
* testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Likewise.
* testsuite/tr1/6_containers/tuple/cons/constructor.cc: Likewise.
* testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc:
Likewise.
* testsuite/tr1/6_containers/array/requirements/contiguous.cc:
Likewise.
* testsuite/tr1/6_containers/array/requirements/member_swap.cc:
Likewise.
* testsuite/tr1/6_containers/array/requirements/assign.cc: Likewise.
* testsuite/tr1/6_containers/array/specialized_algorithms/swap.cc:
Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/
less_or_equal.cc: Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/
greater_or_equal.cc: Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/less.cc:
Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/equal.cc:
Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/not_equal.cc:
Likewise.
* testsuite/tr1/6_containers/array/comparison_operators/greater.cc:
Likewise.
* testsuite/tr1/6_containers/array/tuple_interface/get.cc: Likewise.
* testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
Likewise.
* testsuite/tr1/6_containers/array/element_access/back.cc: Likewise.
* testsuite/tr1/6_containers/array/element_access/front.cc: Likewise.
* testsuite/tr1/6_containers/array/element_access/data.cc: Likewise.
* testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc:
Likewise.
* testsuite/tr1/6_containers/array/capacity/empty.cc: Likewise.
* testsuite/tr1/6_containers/array/capacity/max_size.cc: Likewise.
* testsuite/tr1/6_containers/array/capacity/size.cc: Likewise.
* testsuite/thread/guard.cc: Likewise.
* testsuite/20_util/tuple/cons/big_tuples.cc: Likewise.
* testsuite/20_util/tuple/cons/constructor.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
From-SVN: r131979
2008-01-31 17:19:55 +00:00
Jonathan Wakely
aaf0ca6f27
boost_shared_ptr.h: Add support for allocators, aliasing, make_shared and rvalue-references.
...
2007-12-15 Jonathan Wakely <jwakely-gcc@gmail.com>
* include/tr1_impl/boost_shared_ptr.h: Add support for allocators,
aliasing, make_shared and rvalue-references. Move __shared_count
and _Sp_counted_* classes to new headers.
* include/tr1_impl/boost_sp_counted_base.h: New.
* include/bits/boost_sp_shared_count.h: New.
* include/tr1/boost_sp_shared_count.h: New.
* include/std/memory, include/tr1/memory: Include new headers.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* docs/html/documentation.html: Link to shared_ptr notes.
* docs/html/20_util/shared_ptr.html: New.
* docs/html/17_intro/c++0x_status.html: Update shared_ptr status.
* testsuite/20_util/shared_ptr/cons/alias.cc: New.
* testsuite/20_util/shared_ptr/cons/alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/move.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/move.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/make.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/dr402.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset_alloc.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/assign.cc: Duplicate tr1 test.
* testsuite/20_util/shared_ptr/assign/auto_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/dr541.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/shared_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/casts/1.cc: Likewise.
* testsuite/20_util/shared_ptr/comparison/cmp.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/copy.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/default.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/pointer.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/weak_ptr.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Likewise.
* testsuite/20_util/shared_ptr/dest/dest.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/24595.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/io.cc: Likewise.
* testsuite/20_util/shared_ptr/misc/swap.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/24805.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/reset_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/swap.cc: Likewise.
* testsuite/20_util/shared_ptr/modifiers/swap_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/get.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/unique.cc: Likewise.
* testsuite/20_util/shared_ptr/observers/use_count.cc: Likewise.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
2.cc: Likewise.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation.cc:
Remove.
* testsuite/20_util/weak_ptr/lock/1.cc: Duplicate tr1 test.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
Likewise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
Likewise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation.cc:
Remove.
From-SVN: r130977
2007-12-15 22:28:29 +00:00