Peter Dimov
868a870a59
Fix lightweight_mutex w/ BOOST_USE_WINDOWS_H
2017-09-01 13:25:19 +03:00
Benjamin Worpitz
966786e7f9
fix compilation for nvcc+clang
...
nvcc seems to use the host compiler for preprocessing the source for the device and host compilation.
When compiling the host code with the host compiler (clang), `__builtin_assume` is detected correctly and is also available during compilation.
When compiling the device code with nvcc, this builtin function is not available.
2017-08-28 08:12:48 +02:00
Glen Fernandes
a3c8c2125a
Use has_trivial_assign in construction utilities
2017-07-04 13:45:56 -04:00
Glen Fernandes
3aa419463c
Simplify lsp state types
2017-07-01 10:00:47 -04:00
Glen Fernandes
e4ba116d7e
Minor refactoring in allocate_shared implementations
2017-06-29 22:33:43 -04:00
Glen Fernandes
be736e5088
Implement allocate_local_shared for arrays
...
Also fix the local_shared_ptr constructor to use element_type
2017-06-29 13:05:03 -04:00
Glen Fernandes
48294c483f
Use new shared_count constructors in allocate_shared
2017-06-29 09:24:02 -04:00
Peter Dimov
13e73d6a78
Do not use UINT_MAX to avoid -Wmicrosoft-enum-value from Clang
2017-06-27 16:23:18 +03:00
Peter Dimov
20a517cc3d
Clang/C2 doesn't have _mm_pause
2017-06-27 15:41:56 +03:00
Peter Dimov
0adb1fb212
Add shared_count constructor taking sp_counted_base*
2017-06-22 15:24:49 +03:00
Peter Dimov
2d087d0003
Do not use A::destroy in allocate_shared_noinit
2017-06-21 13:44:17 +03:00
Peter Dimov
81e1cfe301
Merge branch 'develop' into feature/local_shared_ptr
2017-06-21 03:04:16 +03:00
Glen Fernandes
4046186a2d
Use BOOST_NOEXCEPT_OR_NOTHROW for get_deleter
...
throw() optimizes better there with older versions of GCC in C++98.
2017-06-20 19:27:58 -04:00
Peter Dimov
f901988e57
Store shared_count in local_counted_base, not shared_ptr
2017-06-20 21:38:03 +03:00
Peter Dimov
fb17bf685e
Add more tests; fix errors
2017-06-20 20:38:26 +03:00
Peter Dimov
052ebd1946
Merge branch 'develop' into feature/local_get_deleter
2017-06-20 19:35:23 +03:00
Peter Dimov
028bb2cee8
Fix get_deleter in allocate_shared_array.hpp
2017-06-20 19:33:39 +03:00
Peter Dimov
6e5a382b6b
Start work on get_deleter for local_shared_ptr
2017-06-20 19:01:16 +03:00
Peter Dimov
b104d85d95
Fix use of allocator_traits
2017-06-20 05:36:47 +03:00
Peter Dimov
2b5869882a
Optimize make_local_shared to use a single allocation
2017-06-20 04:27:45 +03:00
Peter Dimov
6218c52c1a
Add make_local_shared
2017-06-20 01:42:45 +03:00
Peter Dimov
edf02ab0f9
Add more tests
2017-06-19 01:05:01 +03:00
Peter Dimov
7ed8583a9c
Document shared_ptr atomic access functions
2017-06-18 15:24:00 +03:00
Peter Dimov
6474847481
Make atomic_shared_ptr's default constructor constexpr
2017-06-18 07:56:42 +03:00
Peter Dimov
0e78e219f5
Make default constructors constexpr
2017-06-18 02:43:20 +03:00
Peter Dimov
67d897a533
Add a spinlock to atomic_shared_ptr
2017-06-17 23:37:18 +03:00
Peter Dimov
7bd389c95e
Merge branch 'develop' into feature/local_shared_ptr
2017-06-17 00:15:39 +03:00
Peter Dimov
1cae5c5696
Fix documentation links in headers
2017-06-17 00:13:21 +03:00
Peter Dimov
369fdbe38d
Merge branch 'develop' into feature/local_shared_ptr
2017-06-16 20:20:54 +03:00
Peter Dimov
a048cfb56d
Minor fixes to atomic_shared_ptr.hpp
2017-06-16 20:19:37 +03:00
Peter Dimov
7484d4da41
Merge branch 'develop' into feature/local_shared_ptr
2017-06-16 18:40:01 +03:00
Peter Dimov
a7668291d2
Add atomic_shared_ptr
2017-06-16 18:26:17 +03:00
Peter Dimov
27898b0823
Constrain conversions to shared_ptr/weak_ptr
2017-06-13 20:57:12 +03:00
Peter Dimov
47ee1e09e9
Use single allocation in deleter and allocator constructors
2017-06-13 18:29:18 +03:00
Peter Dimov
4dda1b5fbb
Add lsp_array_* tests
2017-06-13 18:03:01 +03:00
Peter Dimov
585de501da
Embed local_counted_base in the deleter in the pointer case
2017-06-13 17:27:06 +03:00
Peter Dimov
1d314c5668
Make null unique_ptr convert to empty shared_ptr
2017-06-13 05:50:40 +03:00
Peter Dimov
52d976fde2
Use BOOST_SP_NOEXCEPT, BOOST_SP_NOEXCEPT_WITH_ASSERT
2017-06-12 18:06:54 +03:00
Peter Dimov
e75fa9329b
Remove noexcept on ~local_counted_base for g++ 4.7
2017-06-12 15:53:16 +03:00
Peter Dimov
8f2e6d04de
Add more tests
2017-06-12 00:19:07 +03:00
Peter Dimov
8d9c4df71a
Add more tests
2017-06-11 20:35:51 +03:00
Peter Dimov
aeadd6aeff
Initial commit of local_shared_ptr
2017-06-04 21:24:20 +03:00
Raphael Isemann
ba98b8c33f
Reencoded a few headers that used Windows-1252 with UTF-8.
...
Nearly every header in the boost codebase is UTF-8, but here there
are a few headers which are using Windows-1252, which makes it impossible
for some tools to parse those files. This patch just reencodes them
with UTF-8 like the rest of the codebase. I checked that the name of the
author is still correct after this change.
No functional change intended.
2017-06-02 14:51:53 +02:00
Peter Dimov
b530ffcae5
Remove redundant check; add coment; include config.hpp
2017-05-27 03:01:34 +03:00
K. Noel Belcourt
7f42d987e7
Protect clang pragmas with BOOST_CLANG macro.
2017-05-26 12:33:59 -06:00
Glen Fernandes
33b18c7da0
Reformat (line wrap at 80 characters)
2017-05-02 08:12:25 -04:00
Glen Fernandes
6bdd3fde65
Add alternative sp_array_construct for trivially destructible case
2017-04-23 01:42:15 -04:00
Peter Dimov
3568e093bb
Fix lwm_win32_cs.hpp for Clang
2017-04-16 21:38:29 +03:00
Glen Fernandes
71ef7850ab
Add examples back to documentation
2017-03-13 10:59:58 -04:00
Glen Fernandes
650537da60
Update unit tests for make_unique
2017-03-06 08:36:57 -05:00