Peter Dimov
0fd3947e19
<intrin.h> appears broken.
...
[SVN r27737]
2014-02-12 16:41:10 +02:00
Peter Dimov
43bc30e576
Split sp_counted_base into no threads (nt), win32 lock-free (w32) and pthreads (pt)
...
[SVN r27729]
2014-02-12 16:41:10 +02:00
Douglas Gregor
e0ec2a0aaa
Converted to Boost Software License, Version 1.0
...
[SVN r24055]
2014-02-12 16:41:10 +02:00
Peter Dimov
5320981cbb
_MSC_VER use clarified.
...
[SVN r20992]
2014-02-12 16:41:09 +02:00
Peter Dimov
d676bac36a
-Wundef fixes.
...
[SVN r18788]
2014-02-12 16:41:09 +02:00
Peter Dimov
ec1c6ed414
Fixes for Comeau with Borland as backend.
...
[SVN r17588]
2014-02-12 16:41:08 +02:00
Peter Dimov
ce36b11fd5
Made the default page size 512 (g++ 2.96 on Red Hat 7.2 dislikes 496.)
...
[SVN r17272]
2014-02-12 16:41:08 +02:00
Peter Dimov
eee70bdcab
Added BOOST_QA_PAGE_SIZE.
...
[SVN r17270]
2014-02-12 16:41:07 +02:00
Peter Dimov
97eed20d9b
Quick_allocator updates.
...
[SVN r17267]
2014-02-12 16:41:07 +02:00
Peter Dimov
6b6b63ef37
Dave's quick_allocator added, #define BOOST_SP_USE_QUICK_ALLOCATOR to make shared_ptr use it.
...
[SVN r17087]
2014-02-12 16:41:07 +02:00
Glen Fernandes
7ce5b6b2a9
Fix use of ms_init in no C++11 allocator case
2014-02-11 08:39:52 -08:00
Glen Fernandes
7e3ae44bc2
Fix use of size in make_shared for arrays
2014-02-10 21:09:13 -08:00
Glen Fernandes
57dc400fbf
Cosmetic changes in make_shared and make_unique
2014-02-10 21:04:41 -08:00
Glen Fernandes
5f485c2952
Spatial optimization for make_shared for arrays
...
Saves up to sizeof(void*) + sizeof(size_t) bytes for make_shared and saves
sizeof(void*) + sizeof(size_t) + sizeof(A) bytes for allocate_shared where A is the
supplied allocator type.
2014-02-10 20:54:48 -08:00
Peter Dimov
260af64027
Merge branch 'develop'
2014-02-11 01:29:29 +02:00
Peter Dimov
f837c7f56c
Revert "Merge from branch 'develop' into 'master'"
...
This reverts commit 83b3b703e0 .
2014-02-11 01:29:02 +02:00
Glen Fernandes
54fb49a5be
Use typedef A1 (warnings about unused typedefs)
2014-02-09 11:27:22 -08:00
Glen Fernandes
c23bd41c44
Refactor make_shared for arrays
...
Refactor implementation to later simplify making an optimization [for the C++11
allocator case] for when sp_counted_impl_pda destruction invokes the
allocator's destroy function instead of the type's destructor.
2014-02-07 08:03:47 -08:00
Peter Dimov
a64cc5c41c
Use allocator)traits<>::destroy in sp_counted_impl_pda::destroy
2014-02-07 17:37:00 +02:00
Glen Fernandes
e1f170cd49
Drop variadic templates in unit test for VC11
2014-02-06 17:09:27 -08:00
Glen Fernandes
52a5c422a1
Correct typo in shared_array documentation
2014-02-06 01:40:46 -08:00
Glen Fernandes
d46e3c7cbd
Simplify/tidy array_allocator and array_deleter
2014-02-06 01:38:58 -08:00
Glen Fernandes
5008957bd0
Remove type2 tests in a_s_construct_test
2014-02-05 09:10:45 -08:00
Glen Fernandes
6d73b4aa54
Work around VC11 which has broken rebind_traits
...
VC11 has only partial support for C++11 allocators. For example it has a
non-conforming rebind_alloc and rebind_traits in std::allocator_traits
because it does not support C++11 template aliases.
2014-02-04 23:56:34 -08:00
Glen Fernandes
540149f019
Tidy documentation in smart_ptr
2014-02-04 22:45:58 -08:00
Peter Dimov
9f5822f427
Add support and test for C++11 construct/destroy in allocate_shared
2014-02-05 02:31:33 +02:00
Peter Dimov
d229ae870c
Subsume zero-argument overload into the variadic one
2014-02-05 01:04:20 +02:00
Glen Fernandes
3ac6dbbf08
Make detail::as_allocator template C++11 friendly
2014-02-04 15:00:24 -08:00
Peter Dimov
af5141d492
Merge commit
2014-02-05 00:32:36 +02:00
Peter Dimov
975d04ac62
Merge Jamfile.v2 on git's insistence
2014-02-05 00:29:18 +02:00
Peter Dimov
90e74511f7
Add support and tests for C++11 minimal allocators
2014-02-05 00:17:34 +02:00
Glen Fernandes
f27b780724
Add unit test for allocate_shared construct case
2014-02-04 13:17:49 -08:00
Glen Fernandes
51ab46a07d
Fix use of rebind_traits and rebind_alloc
2014-02-04 12:42:10 -08:00
Glen Fernandes
e8595a05af
Fix use of rebind_traits and rebind_alloc
2014-02-04 08:43:36 -08:00
Glen Fernandes
154a274916
Update make_shared for arrays to address 2070
...
This updates make_shared and allocate_shared for arrays in accordance with
report 2070 which requires that allocator_traits<A2>::construct(a2, ptr,
...) is used for construction and allocator_traits<A2>::destroy(a2, ptr)
is used for destruction instead of placement new and destructor
invocation.
2014-02-04 04:46:03 -08:00
Glen Fernandes
2b033ce05d
Improve documentation for make_shared for arrays
2014-02-03 16:42:57 -08:00
Glen Fernandes
63a05a3576
Refactor make_array_helper and array_deleter
...
Reduce the amount of code in allocate_array_helper, make_array_helper, and
array_deleter using the empty base class optimization technique.
2014-02-03 07:28:01 -08:00
Glen Fernandes
aede0039bf
make_unique tests run only for C++11 compilers
2014-01-31 11:01:37 -08:00
Glen Fernandes
72e5fb6fd7
Add fourth form of make_unique for objects
...
To support initialization syntax that Args&&... cannot forward perfectly.
2014-01-29 17:16:01 -08:00
Glen Fernandes
f91e7e9ce7
Minor documentation corrections
2014-01-29 09:15:47 -08:00
Glen Fernandes
7fef3bb40b
Add top-level make_unique.hpp and documentation
2014-01-29 07:25:30 -08:00
Glen Fernandes
ad658fa5ec
Update make shared for arrays documentation
2014-01-29 05:49:07 -08:00
Glen Fernandes
83b3b703e0
Merge from branch 'develop' into 'master'
...
1. Update make_shared for arrays to conform to N3870
Merging 630e4f49f3^..87e5debdc2 from develop to master
2014-01-28 11:28:54 -08:00
Glen Fernandes
7806737b52
Add make_unique for arrays and objects
2014-01-28 03:58:51 -08:00
Glen Fernandes
87e5debdc2
Minor cosmetic changes in make_shared for arrays
2014-01-28 03:40:54 -08:00
Glen Fernandes
db78d9b2be
Update make_shared for arrays documentation
2014-01-23 21:16:51 -08:00
Glen Fernandes
630e4f49f3
Update make_shared for arrays to conform to N3870
...
Update make_shared and allocate_shared for arrays to be confined to the
set of overloads specified in N3870.
2014-01-23 20:40:46 -08:00
Peter Dimov
a68db557e8
Deboldify, clean up intrusive_ptr.html.
2013-12-26 19:05:54 +02:00
Peter Dimov
4de3f36839
Add add_ref parameter to intrusive_ptr::reset, add tests for reset.
2013-12-26 18:47:05 +02:00
Peter Dimov
4e46cb0609
Add one more intrusive_ptr test case.
2013-12-26 18:05:52 +02:00