Glen Fernandes
034f94617d
Workaround for VC10 unique_ptr operator->
2019-08-30 12:03:36 -04:00
Glen Fernandes
e56eec70ca
Call to_address in the scalar destroy case too
2019-08-30 07:39:02 -04:00
Glen Fernandes
60c26acab8
Implement allocate_unique
2019-08-30 00:31:28 -04:00
Carl Bussey
876d40a9ab
atomic_count_std_atomic: static_cast v to std::int_least32_t
...
* fix implicit conversion warning
2019-06-18 11:44:17 +02:00
Glen Fernandes
3dffa64f58
Bind allocator to element type, not scalar type
2019-05-15 07:33:04 -04:00
Glen Fernandes
af92bd89ef
allocation_ptr will be modified, renamed, and moved to detail
2019-05-05 22:21:22 -04:00
Glen Fernandes
4742143605
Support allocation_ptr of const and volatile types
2019-05-04 09:43:11 -04:00
Glen Fernandes
872bf10347
Move construct and destroy from Smart_Ptr to Core
2019-05-03 17:39:25 -04:00
Glen Fernandes
c0ae9b3728
Implement allocation_ptr
2019-05-02 19:26:29 -04:00
Glen Fernandes
1298c2e8e5
Include sp_noexcept.hpp in sp_construct.hpp
2019-05-02 18:00:53 -04:00
Glen Fernandes
d593061b15
Move construct and destroy utilities to common header
2019-05-02 09:48:45 -04:00
Glen Fernandes
5072045f12
Use boost::noinit_adapt free function
2019-04-29 00:37:55 -04:00
Glen Fernandes
442e179920
Simplify implementation in terms of noinit_adaptor
2019-04-28 22:42:37 -04:00
Peter Dimov
4b6cb1223b
Add boost/smart_ptr/enable_shared_from.hpp
2019-04-24 04:50:30 +03:00
Peter Dimov
a571b3a250
Only include core/typeinfo.hpp when needed
2019-04-22 06:07:36 +03:00
Peter Dimov
e306b30dcf
Use a private detail/sp_typeinfo header instead of the deprecated Core one
2019-04-22 05:25:07 +03:00
Peter Dimov
2122c7753c
Avoid memcpy over a spinlock, because g++ 8 warns
2019-04-22 02:17:28 +03:00
Peter Dimov
372fac679b
Remove _internal_aliasing_assign
2019-04-21 23:13:06 +03:00
Peter Dimov
513cd15378
Add aliasing constructors to weak_ptr. Closes #67 .
2019-04-21 22:43:04 +03:00
Peter Dimov
8120bb44cb
Add rvalue pointer casts ( closes #66 )
2019-04-21 00:47:36 +03:00
Glen Fernandes
8ccb36dfcf
Use traits from TypeTraits
2019-02-22 19:36:32 -05:00
Peter Dimov
aa1341a6a2
Add BOOST_SP_NOEXCEPT to sp_counted_base_nt.hpp
2019-01-28 21:24:09 +02:00
Peter Dimov
053779f3ee
Add BOOST_SP_NOEXCEPT to sp_counted_base_clang.hpp
2019-01-28 20:52:28 +02:00
Peter Dimov
51d8167fbf
Add more BOOST_SP_NOEXCEPT
2019-01-28 18:46:39 +02:00
Nikita Kniazev
eac6411867
Do not include the whole Predef for a single macro
2018-12-28 03:03:02 +03:00
Peter Dimov
2932ca4203
Change sp_counted_base_nt/_pt to use boost::int_least32_t instead of long (which may be 64 bit)
2018-12-23 01:54:36 +02:00
Peter Dimov
f6c3508aee
Add make_local_shared_const_test
2018-11-10 21:04:22 +02:00
Romain Geissler
456da93897
Use BOOST_NOEXCEPT_OR_NOTHROW in public headers to prepare for C++20.
2018-11-09 14:55:34 +00:00
Glen Fernandes
29a08cdff6
Use BOOST_SYMBOL_VISIBLE with local_counted_base and children
2018-09-19 13:50:13 -04:00
Peter Dimov
6d3af760f6
Generously dispense BOOST_SYMBOL_VISIBLE
2018-09-18 03:18:23 +03:00
Peter Dimov
4eb53db537
Use intrin.h under clang-cl
2018-08-12 01:26:59 +03:00
Glen Fernandes
a2b6ba85f3
Simplify exception safety in array construct utilities
2018-08-01 08:45:10 -04:00
Peter Dimov
8563fc5c4e
Add tests that include <windows.h>
2018-03-11 23:00:50 +02:00
Peter Dimov
67fab5c9ec
Clang x64 warns that __stdcall is ignored, so don't use it there
2018-03-08 06:53:28 +02:00
Peter Dimov
f16fbdce26
Fix sp_interlocked on Cygwin 64
2018-03-08 05:15:49 +02:00
Peter Dimov
c3b3835a58
Mingw doesn't have _RTL_CRITICAL_SECTION
2018-03-08 03:34:00 +02:00
Peter Dimov
d1600b8abc
Do not define pthread_* in lightweight_thread.hpp; mingw-w64 includes pthread.h in the standard library headers
2018-03-08 01:19:44 +02:00
Peter Dimov
4129bb6a5c
Use unique_ptr instead of auto_ptr when available
2018-02-19 06:16:11 +02:00
Peter Dimov
4025698fe8
Change atomic operations to take an arbitrary MemoryOrder type, to fix test breakage caused by transition to scoped enum in Boost.Atomic, tracking C++20
2018-02-07 17:45:07 +02:00
Peter Dimov
937a3e0e93
Remove tabs
2018-01-23 06:29:17 +02:00
YunQiang Su
4252ed31de
disable .set mips2 for mips release r6
...
MIPS r6 changed the encoding for `ll' instruction,
if we `.set mips2', it will generate the old encoding for `ll'.
So here we disable it for r6.
2017-12-31 14:14:11 +08:00
Glen Fernandes
5dfcd2a6e4
Rename parameters to cope with gcc 4.8 -Wshadow
2017-11-27 23:47:13 -05:00
Glen Fernandes
57a585ed46
sp_array_construct condition for trivial should include has_trivial_destructor
2017-11-02 11:53:41 -04:00
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