Commit Graph

982 Commits

Author SHA1 Message Date
Peter Dimov 7b71068b52 Extend nullptr_t workaround to Intel C++. 2014-08-09 00:26:00 +03:00
Peter Dimov 6b562cb5b1 Rename enable_shared_from_raw_test.cpp to weak_from_raw_test.cpp. 2014-08-08 21:28:15 +03:00
Peter Dimov 3d2c230623 Rename esft_constructor_test.cpp to shared_from_raw_test5.cpp. 2014-08-08 21:24:20 +03:00
Peter Dimov 8de3e84021 Fix shared_from_raw_test4 failures. 2014-08-06 21:28:03 +03:00
Peter Dimov bd4f9c239a Add shared_from_raw tests. 2014-08-06 21:07:52 +03:00
Peter Dimov 528195233b Merge branch 'aix_fix' of https://github.com/ibmsoe/smart_ptr into develop 2014-07-30 17:51:32 +03:00
Axel Ismirlian 8c49f5a637 Avoid potential conflict between AIX's and Lambda's var.
In ../boost/lambda/detail/lambda_functor_base.hpp there is variable called var that conflicts with an AIX system variable. The entire file (sched.h) does not need to be included only the one function it uses (sched_yield).
2014-07-30 09:23:21 -05:00
Glen Fernandes 88f0a98d71 Rename member because _CRTDBG_MAP_ALLOC in VS does not allow it
_CRTDBG_MAP_ALLOC has issues with member functions named "free".
2014-07-25 20:33:29 -07:00
Peter Dimov 96d82e0275 Merge pull request #6 from Lastique/patch-3
Fix compilation problems with clang
2014-07-16 16:31:22 +03:00
Andrey Semashev 40387ef654 Fix compilation problems with clang
Apparently, clang presents itself as gcc 4.2 even though it supports the final version of rvalue references. Restrict the workaround to gcc only.
2014-07-16 16:43:35 +04:00
Peter Dimov 1d41a328f7 Merge pull request #5 from Lastique/patch-2
Fix warnings on gcc 4.4
2014-07-15 12:30:54 +03:00
Andrey Semashev b1beb11a45 Fix warnings on gcc 4.4
Added a special version of sp_forward for an outdated version of rvalue references supported by gcc 4.4. The compiler would create a temporary and return an rvalue reference to it in the original code. This resulted in warnings about 'returning reference to temporary'.

The added version is similar to std::forward on that compiler, except it doesn't prohibit template argument deduction (which is in line with the original sp_forward).
2014-07-14 22:33:16 +04:00
Peter Dimov bf3e9cc7af -Wshadow fixes. 2014-07-12 20:35:14 +03:00
Peter Dimov d6841e6d71 Remove trailing whitespace. 2014-06-11 22:29:15 +03:00
Peter Dimov 56ae9f86c1 Merge pull request #4 from stgates/winrt
[winrt support] Replacing banned APIs Sleep and InitializeCriticalSection
2014-06-11 22:12:25 +03:00
Steve Gates 1a74757cfa Adding missing include for boost\predef.h. 2014-06-11 11:44:25 -07:00
Steve Gates 07e222217b Updating to use BOOST_PLAT_WINDOWS_RUNTIME based on review feedback. 2014-06-11 11:33:03 -07:00
Steve Gates 71c9165119 Replacing banned APIs Sleep and InitializeCriticalSection for Windows store and phone. 2014-06-10 22:07:51 -07:00
Peter Dimov f32669400c Remove headers moved into core. 2014-06-03 20:25:38 +03:00
Peter Dimov b550e028f5 Move boost/memory_order.hpp to Boost.Atomic 2014-05-20 23:33:03 +03:00
Peter Dimov ed2eaddc5d Check BOOST_NO_CXX11_RVALUE_REFERENCES in tests that use std::unique_ptr. 2014-05-15 18:51:27 +03:00
Glen Fernandes d523c3423e Use Boost.Align for alignment 2014-05-04 08:20:37 -07:00
Glen Fernandes 1968d17d2f Use add_rvalue_reference in make_unique overload 2014-03-12 20:27:36 -07:00
Glen Fernandes e1e99c5ba3 Merge pull request #3 from Lastique/patch-1
Fix warnings about struct/class mismatch
2014-03-08 10:36:20 -08:00
Andrey Semashev d586469d60 Fix warnings about struct/class mismatch
ms_allocator_state template was declared as class but its specializations were as structs. This caused Clang 3.2 warnings. The commit changes ms_allocator_state declaration to struct to fix that.
2014-03-08 18:31:31 +03:00
Peter Dimov fbb851097f Disable the std::atomic spinlock implementation on Clang 2014-03-01 02:14:56 +02:00
Glen Fernandes 75add10b1d Simplify ms_allocator and as_allocator design 2014-02-28 10:19:50 -08:00
Peter Dimov 71b2f87e35 Merge branch 'develop' 2014-02-26 15:10:01 +02:00
Peter Dimov c759321782 Remove interlocked.hpp, was left behind by the merge 2014-02-26 14:57:59 +02:00
Peter Dimov 3e625c07e8 Switch to sp_interlocked.hpp 2014-02-25 01:32:19 +02:00
Peter Dimov 7ff1c65494 Merge branch 'develop' 2014-02-24 20:34:18 +02:00
Glen Fernandes 75cab39801 Drop the BOOST_NO_CXX11_STD_ALIGN-undefined path
Until the merge of Boost.Config develop to master
2014-02-24 08:35:59 -08:00
Glen Fernandes 38cb523713 Derive empty base optimization from rebound allocator 2014-02-18 00:16:57 -08:00
Glen Fernandes 5f1d4eae4f Factor out alignment code into sp_align 2014-02-16 12:15:29 -08:00
Glen Fernandes adc0cdddff Make as_allocator::deallocate consistent 2014-02-14 18:31:52 -08:00
Peter Dimov dcfa031de7 Do not include sp_interlocked.hpp when not on Windows 2014-02-13 12:51:23 +02:00
Glen Fernandes 8c9e8b5556 Further simplification of ms_allocator 2014-02-12 22:15:15 -08:00
Glen Fernandes d9333e5375 Simplify array_allocator; update documentation 2014-02-12 19:34:56 -08:00
Glen Fernandes 3d279e6c6d Save additional sizeof(void*) bytes for arrays 2014-02-12 13:52:58 -08:00
Peter Dimov c003fba3a0 Renamed, cleaned up interlocked.hpp; added test 2014-02-12 20:48:35 +02:00
Peter Dimov 0c29e86728 Add spinlock_std_atomic.hpp 2014-02-12 20:20:56 +02:00
Glen Fernandes 016af907bd Make sp_counted_impl_ specialization more generic 2014-02-12 08:46:59 -08:00
Peter Dimov 0337743c8c Revert "Remove obsolete MSVC check from pragma guard"
This reverts commit b7ee788845.
2014-02-12 16:57:45 +02:00
Peter Dimov 208bfd78f9 Move interlocked.hpp to smart_ptr/detail 2014-02-12 16:42:24 +02:00
Peter Dimov 2c32bf91b7 Add BOOST_USE_INTRIN_H support; remove #pragma intrinsic, not needed and not supported on Intel.
[SVN r85994]
2014-02-12 16:41:23 +02:00
Stephen Kelly b7ee788845 Remove obsolete MSVC check from pragma guard
git grep -h -B1 "^#\s*pragma once" | grep -v pragma | sort | uniq

is now clean.

[SVN r85952]
2014-02-12 16:41:22 +02:00
Andrey Semashev a56378ee35 Enabled #pragma once for all compilers that support it, not only MSVC.
[SVN r85866]
2014-02-12 16:41:22 +02:00
Andrey Semashev 443302306e Fixed compilation problems with MinGW-w64.
[SVN r85865]
2014-02-12 16:41:21 +02:00
Peter Dimov f5402a937e Fix the _WIN32_WCE >= 0x600 case.
[SVN r80935]
2014-02-12 16:41:21 +02:00
Jürgen Hunold fe04bea979 Fix: intrin.h is available in msvc-9.0 (_MSC_VER 1500)
[SVN r80626]
2014-02-12 16:41:21 +02:00