1427 Commits

Author SHA1 Message Date
Ion Gaztañaga
cb732a22be Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF 2015-01-26 00:14:35 +01:00
Ion Gaztañaga
dbafd61d4d updated move assignments and swap operations to "N4258: Cleaning-up noexcept in the Library, Rev 3" with some customizations. 2015-01-19 00:18:44 +01:00
Ion Gaztañaga
18ad354dcf New allocator defines is_always_equal as true 2015-01-18 13:10:11 +01:00
Ion Gaztañaga
f0f35a830d Added C++17's is_always_equal to allocator_traits and scoped_allocator_adaptor 2015-01-18 11:22:52 +01:00
Ion Gaztañaga
1012987897 Fix max_size to return the size_type(-1)/sizeof(value_type), as otherwise it would overflow on allocation. 2015-01-17 22:52:17 +01:00
Ion Gaztañaga
7635eba375 Typedef'ed allocator_arg_t as "const std::allocator_arg_t &" to improve interoperability between C++11 allocator-aware types. 2015-01-17 19:11:52 +01:00
Ion Gaztañaga
37db43b697 Try to fix MSVC12 warnings of uninitialized variables when using no exception macros. 2015-01-17 17:35:05 +01:00
Ion Gaztañaga
69324174c7 Support types with std::allocator_arg_at with boost::container::scoped_allocator_adaptor 2015-01-11 23:50:58 +01:00
Ion Gaztañaga
a322203a89 Replaced _MSC_VER with BOOST_HAS_PRAGMA_ONCE before #pragma once. 2015-01-10 12:50:17 +01:00
Ion Gaztañaga
36c8f81e42 Add placement new operator to avoid <new> unnecessarily. 2015-01-10 10:58:08 +01:00
Ion Gaztañaga
09b653c40b Define insert_iterator specialization in inline namespace std in libc++. 2015-01-09 21:49:52 +01:00
Ion Gaztañaga
64026d26c2 Correctly initialize vector_value_traits_base<T>::trivial_dctr_after_move 2015-01-09 21:20:24 +01:00
Ion Gaztañaga
984be81160 Add insert_iterator forward declaration. 2015-01-09 21:19:35 +01:00
Ion Gaztañaga
f7cc3c4f74 Removed unused slist.hpp include. 2015-01-08 15:35:43 +01:00
Ion Gaztañaga
2856b89789 Add max_align_t to the namespace. 2015-01-06 22:46:51 +01:00
Ion Gaztañaga
28855001ab Merge branch 'awulkiew-patch-1' into develop 2015-01-05 09:29:06 +01:00
Adam Wulkiewicz
099966e1cf Fix varray_detail::construct() (version emulating perfect forwarding). 2015-01-04 04:00:46 +01:00
Ion Gaztañaga
37578ccaa2 New header, minimal_char_traits_header.hpp, to avoid including <string> to use char_traits when possible. 2015-01-04 02:30:57 +01:00
Ion Gaztañaga
ddc89f32d9 Disabled warning #4345 (behavior change: an object of POD type constructed with an initializer of the form () will be default-initialized) 2015-01-04 02:30:19 +01:00
Ion Gaztañaga
a369e3c8c5 Avoid instantiating iterator tags to allow iterators that define iterator_categories with forward declared tags. 2015-01-04 02:29:15 +01:00
Ion Gaztañaga
493f19f2a9 New tests, to measure if container headers include all what's needed to use them. 2015-01-04 02:27:23 +01:00
Ion Gaztañaga
360957a797 Massive dependency reduction. Removed dependency on several boost libraries and standard C++ headers. 2015-01-02 19:34:21 +01:00
Ion Gaztañaga
955248b739 Replace "Allocator" template parameter with "A", according to the standard. 2014-12-11 22:01:58 +01:00
Ion Gaztañaga
456e9fedcb Some adaptations due to internal Intrusive changes. 2014-12-08 15:49:21 +01:00
Ion Gaztañaga
32418cab5f Use boost::adl_move_swap instead of custom swap or std::swap for performance and compatibility reasons. 2014-11-28 15:41:44 +01:00
Ion Gaztañaga
afd1c2d266 Use boost::adl_move_swap instead of own swap utility
Imported basic algorithms from Boost.Intrusive
2014-11-26 19:33:27 +01:00
Ion Gaztañaga
7971dc6602 Refactored uses of <iterator> and <algorithm> to avoid dependencies where possible. 2014-11-26 07:08:06 +01:00
Ion Gaztañaga
d514c1ab66 Refactored comparison functors to reuse compare_functors.hpp classes 2014-11-23 10:07:12 +01:00
Ion Gaztañaga
1d38ecfd10 Fixed #10790 (Trac): long long errors from container 2014-11-22 12:26:35 +01:00
Ion Gaztañaga
e6d19fb408 Fixed in bug in vector::operator== 2014-11-09 21:06:36 +01:00
Ion Gaztañaga
652b870088 Merge branch 'develop' of github.com:boostorg/container into develop 2014-11-01 20:04:18 +01:00
Ion Gaztañaga
6f1f162cb3 - Added nth and index_of.
- Used BOOST_MOVE_BASE
2014-11-01 20:03:25 +01:00
Daniel James
379389867a Remove invalid character that was breaking the documentation build.
UTF-8 should be used in quickbook.
boost-1.57.0
2014-10-17 19:38:03 +01:00
Ion Gaztañaga
6d034733bd Added missing #pragma once 2014-10-13 23:26:01 +02:00
Ion Gaztañaga
cc699e956f Updated due to Intrusive detail changes. 2014-10-10 18:23:19 +02:00
Ion Gaztañaga
5d6123152c Removed unneeded includes. Refactores std forward declarations 2014-10-04 09:05:04 +02:00
Ion Gaztañaga
d19b012d53 Reduced include dependencies:
- Replaced boost/move/move.hpp with boost/move/utility_core.hpp
- Replaces <new> with placement_new.hpp
- Removed some unneeded std includes.
2014-09-26 08:12:40 +02:00
Ion Gaztañaga
3af96e0801 Implements N3644.
- Avoid deriving from std::iterator_traits as iterators become too fat.
- Use intrusive's reverse_iterator some std::reverse_iterator-s don't value initialize base.
2014-09-24 16:09:56 +02:00
Ion Gaztañaga
92e81fcf77 Fix compile error in GCC due to missing include and fixed some signed/unsigned comparison warnings 2014-09-23 18:50:46 +02:00
Ion Gaztañaga
e697122a2c Updated tests to avoid manual memory management. Replaced with unique_ptr and a reference. Normalized CheckEqualContainers to use references instead of pointers. 2014-09-23 17:30:31 +02:00
Ion Gaztañaga
4d5b9a80cf Added life cout and double destruction assertions to test integer-like classes.
Changelog updated with double destruction bugs fix.
2014-09-23 17:29:26 +02:00
Ion Gaztañaga
5477125eeb Added /FIXED:NO flag to projects to make them compatible with some memory error detection tools 2014-09-23 17:28:13 +02:00
Ion Gaztañaga
be9837fd54 Fix multiple destructor bug, pointer was not incremented in ~scoped_destructor_n() 2014-09-23 16:58:38 +02:00
Ion Gaztañaga
44d326e159 Added explicit guarantee for iterators to containers of incomplete types. Added iterators to the recursive container example. 2014-09-22 22:45:55 +02:00
Ion Gaztañaga
f5e678fc70 Remove warning of unused variable. 2014-09-22 22:31:34 +02:00
Ion Gaztañaga
01c3f5d57e Merge branch 'mikael-s-persson-fix-incomp-type-iterators' into develop 2014-09-22 22:03:33 +02:00
mikael
59b46cd338 Fixes a small issue that prevented the use of iterators of containers of incomplete types. Added iterators of incomp-types to unit-tests. 2014-09-21 19:46:58 -04:00
Ion Gaztañaga
3bbb0bbe0e Fixed wrong BOOST_CONTAINER_VECTOR_ALLOC_STATS comments in vector_alloc_base, they should go to the derived vector class.
Fixed error in void assign(FwdIt first, FwdIt last) when fwd expansion occurs, capacity was not being updated.
Optimized erasure when the type has_trivial_destructor_after_move.
Simplified a bit backwards expansion code.
Optimized priv_uninitialized_construct_at_end calling memmove-aware functions instead of using a hand-written loop
2014-09-21 23:57:23 +02:00
Ion Gaztañaga
33c920d435 Removed unneeded includes. 2014-09-21 23:50:40 +02:00
Ion Gaztañaga
76fcab1a09 Use emplace instead or push_back in priv_insert_ordered_range 2014-09-20 17:30:09 +02:00