6332a9f0bb
Fix error with initializer_list test code, list has no "insert_after"
Ion Gaztañaga
2015-02-28 00:17:05 +01:00
1025ad2bbc
Reuse vector's initializer_list test code
Ion Gaztañaga
2015-02-28 00:15:27 +01:00
63a83096a8
Add small function to test conversion to small_vector_base
Ion Gaztañaga
2015-02-27 21:36:43 +01:00
7239c8e262
Refactor initializer_list tests to avoid code duplication and add some missing initializer_list overload tests
Ion Gaztañaga
2015-02-27 19:24:46 +01:00
90b3af4229
Document small_vector_base
Ion Gaztañaga
2015-02-27 19:21:58 +01:00
3949963645
Fix "void multiset::insert(std::initializer_list<value_type> il)" calling base_t::insert_unique instead of base_t::insert_equal
Ion Gaztañaga
2015-02-27 19:19:23 +01:00
8cdfec7890
Add experimental small_vector class
Ion Gaztañaga
2015-02-26 00:35:59 +01:00
4609c78ccb
Test more constructors
Ion Gaztañaga
2015-02-26 00:34:37 +01:00
6c5e527c60
Improve allocator propagation test with new constructors and refactor code to avoid too many wrappers.
Ion Gaztañaga
2015-02-26 00:31:19 +01:00
7160bea2aa
Explicit constructor for allocator_destroyer
Ion Gaztañaga
2015-02-26 00:27:53 +01:00
4c2b352d7c
update operator== with allocator_traits::equal
Ion Gaztañaga
2015-02-26 00:26:53 +01:00
342bd73aeb
Implement storage_can_be_propagated and is_always_equal.
Ion Gaztañaga
2015-02-26 00:25:14 +01:00
c2ea5da716
Fix move constructors with unequal allocators and move/copy assignment of tree.
Ion Gaztañaga
2015-02-26 00:22:23 +01:00
d0750f4493
Rename parameters to avoid confusion when debugging.
Ion Gaztañaga
2015-02-26 00:17:57 +01:00
012781cc94
Try to support GCC's versioned std namespace
Ion Gaztañaga
2015-02-26 00:16:47 +01:00
7b3d70ad83
Fix pair's swap to avoid unqualified swap calls.
Ion Gaztañaga
2015-02-26 00:16:13 +01:00
5ea8e24923
Update "are_elements_contiguous" for move iterators.
Ion Gaztañaga
2015-02-26 00:15:23 +01:00
f47bf08ccc
Try to definitely fix Trac Issue #9931 (flat_map::insert(ordered_unique_range_t...) fails with move_iterators")
Ion Gaztañaga
2015-02-03 16:09:47 +01:00
5455eb58bf
Changelog updated with LWG #2210
Ion Gaztañaga
2015-02-03 14:25:44 +01:00
22f1d32f7b
Addd new constructors to containers, according to C++14's new constructors taking allocator arguments.
Ion Gaztañaga
2015-02-03 14:08:29 +01:00
a7adc46a54
More changes to include boost/config.hpp before testing BOOST_HAS_PRAGMA_ONCE
Ion Gaztañaga
2015-02-02 16:00:58 +01:00
10d027aa9c
Include boost/config.hpp before testinG BOOST_HAS_PRAGMA_ONCE.
Ion Gaztañaga
2015-02-02 15:26:53 +01:00
0f02b3b3bf
Merge branch 'yuriks-smart-quotes' into develop
Ion Gaztañaga
2015-02-01 00:11:11 +01:00
b786c8f716
Replaced BOOST_CONTIANER_NOEXCEPT with BOOST_NOEXCEPT
Ion Gaztañaga
2015-01-28 22:11:00 +01:00
9fede24d7e
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
Ion Gaztañaga
2015-01-26 00:33:40 +01:00
ef7137a945
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
Ion Gaztañaga
2015-01-26 00:30:01 +01:00
8c68621803
Fixed pull #22
Ion Gaztañaga
2015-01-26 00:18:32 +01:00
cb732a22be
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
Ion Gaztañaga
2015-01-26 00:14:35 +01:00
dbafd61d4d
updated move assignments and swap operations to "N4258: Cleaning-up noexcept in the Library, Rev 3" with some customizations.
Ion Gaztañaga
2015-01-19 00:18:44 +01:00
18ad354dcf
New allocator defines is_always_equal as true
Ion Gaztañaga
2015-01-18 13:10:11 +01:00
f0f35a830d
Added C++17's is_always_equal to allocator_traits and scoped_allocator_adaptor
Ion Gaztañaga
2015-01-18 11:22:52 +01:00
1012987897
Fix max_size to return the size_type(-1)/sizeof(value_type), as otherwise it would overflow on allocation.
Ion Gaztañaga
2015-01-17 22:52:17 +01:00
7635eba375
Typedef'ed allocator_arg_t as "const std::allocator_arg_t &" to improve interoperability between C++11 allocator-aware types.
Ion Gaztañaga
2015-01-17 19:11:52 +01:00
37db43b697
Try to fix MSVC12 warnings of uninitialized variables when using no exception macros.
Ion Gaztañaga
2015-01-17 17:35:05 +01:00
69324174c7
Support types with std::allocator_arg_at with boost::container::scoped_allocator_adaptor
Ion Gaztañaga
2015-01-11 23:50:58 +01:00
a322203a89
Replaced _MSC_VER with BOOST_HAS_PRAGMA_ONCE before #pragma once.
Ion Gaztañaga
2015-01-10 12:50:17 +01:00
36c8f81e42
Add placement new operator to avoid <new> unnecessarily.
Ion Gaztañaga
2015-01-10 10:58:08 +01:00
09b653c40b
Define insert_iterator specialization in inline namespace std in libc++.
Ion Gaztañaga
2015-01-09 21:49:52 +01:00
64026d26c2
Correctly initialize vector_value_traits_base<T>::trivial_dctr_after_move
Ion Gaztañaga
2015-01-09 21:20:24 +01:00
984be81160
Add insert_iterator forward declaration.
Ion Gaztañaga
2015-01-09 21:19:35 +01:00
f7cc3c4f74
Removed unused slist.hpp include.
Ion Gaztañaga
2015-01-08 15:35:43 +01:00
2856b89789
Add max_align_t to the namespace.
Ion Gaztañaga
2015-01-06 22:46:51 +01:00
28855001ab
Merge branch 'awulkiew-patch-1' into develop
Ion Gaztañaga
2015-01-05 09:29:06 +01:00
37578ccaa2
New header, minimal_char_traits_header.hpp, to avoid including <string> to use char_traits when possible.
Ion Gaztañaga
2015-01-04 02:30:57 +01:00
ddc89f32d9
Disabled warning #4345 (behavior change: an object of POD type constructed with an initializer of the form () will be default-initialized)
Ion Gaztañaga
2015-01-04 02:30:19 +01:00
a369e3c8c5
Avoid instantiating iterator tags to allow iterators that define iterator_categories with forward declared tags.
Ion Gaztañaga
2015-01-04 02:29:15 +01:00
493f19f2a9
New tests, to measure if container headers include all what's needed to use them.
Ion Gaztañaga
2015-01-04 02:24:24 +01:00
360957a797
Massive dependency reduction. Removed dependency on several boost libraries and standard C++ headers.
Ion Gaztañaga
2015-01-02 19:34:21 +01:00
955248b739
Replace "Allocator" template parameter with "A", according to the standard.
Ion Gaztañaga
2014-12-11 22:01:58 +01:00
456e9fedcb
Some adaptations due to internal Intrusive changes.
Ion Gaztañaga
2014-12-08 15:49:21 +01:00
32418cab5f
Use boost::adl_move_swap instead of custom swap or std::swap for performance and compatibility reasons.
Ion Gaztañaga
2014-11-28 15:41:44 +01:00
afd1c2d266
Use boost::adl_move_swap instead of own swap utility Imported basic algorithms from Boost.Intrusive
Ion Gaztañaga
2014-11-26 19:33:27 +01:00
7971dc6602
Refactored uses of <iterator> and <algorithm> to avoid dependencies where possible.
Ion Gaztañaga
2014-11-26 07:08:06 +01:00
d514c1ab66
Refactored comparison functors to reuse compare_functors.hpp classes
Ion Gaztañaga
2014-11-23 10:07:12 +01:00
1d38ecfd10Fixed#10790 (Trac): long long errors from container
Ion Gaztañaga
2014-11-22 12:26:35 +01:00
e6d19fb408
Fixed in bug in vector::operator==
Ion Gaztañaga
2014-11-09 21:06:36 +01:00
652b870088
Merge branch 'develop' of github.com:boostorg/container into develop
Ion Gaztañaga
2014-11-01 20:04:18 +01:00
6f1f162cb3
- Added nth and index_of. - Used BOOST_MOVE_BASE
Ion Gaztañaga
2014-11-01 20:03:25 +01:00
379389867a
Remove invalid character that was breaking the documentation build.
Daniel James
2014-10-17 19:38:03 +01:00
6d034733bd
Added missing #pragma once
Ion Gaztañaga
2014-10-13 23:26:01 +02:00
cc699e956f
Updated due to Intrusive detail changes.
Ion Gaztañaga
2014-10-10 18:23:19 +02:00
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.
Ion Gaztañaga
2014-09-26 08:12:40 +02:00
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.
Ion Gaztañaga
2014-09-24 16:09:56 +02:00
92e81fcf77
Fix compile error in GCC due to missing include and fixed some signed/unsigned comparison warnings
Ion Gaztañaga
2014-09-23 18:50:46 +02:00
e697122a2c
Updated tests to avoid manual memory management. Replaced with unique_ptr and a reference. Normalized CheckEqualContainers to use references instead of pointers.
Ion Gaztañaga
2014-09-23 17:30:31 +02:00
4d5b9a80cf
Added life cout and double destruction assertions to test integer-like classes. Changelog updated with double destruction bugs fix.
Ion Gaztañaga
2014-09-23 17:29:26 +02:00
5477125eeb
Added /FIXED:NO flag to projects to make them compatible with some memory error detection tools
Ion Gaztañaga
2014-09-23 17:28:13 +02:00
be9837fd54
Fix multiple destructor bug, pointer was not incremented in ~scoped_destructor_n()
Ion Gaztañaga
2014-09-23 16:58:38 +02:00
44d326e159
Added explicit guarantee for iterators to containers of incomplete types. Added iterators to the recursive container example.
Ion Gaztañaga
2014-09-22 22:45:55 +02:00
f5e678fc70
Remove warning of unused variable.
Ion Gaztañaga
2014-09-22 22:31:34 +02:00
01c3f5d57e
Merge branch 'mikael-s-persson-fix-incomp-type-iterators' into develop
Ion Gaztañaga
2014-09-22 22:03:33 +02:00
59b46cd338
Fixes a small issue that prevented the use of iterators of containers of incomplete types. Added iterators of incomp-types to unit-tests.
mikael
2014-09-21 19:46:58 -04:00
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
Ion Gaztañaga
2014-09-21 23:57:23 +02:00
33c920d435
Removed unneeded includes.
Ion Gaztañaga
2014-09-21 23:50:40 +02:00
76fcab1a09
Use emplace instead or push_back in priv_insert_ordered_range
Ion Gaztañaga
2014-09-20 17:30:09 +02:00
1e40192e96
Added more tests for backwards expansion
Ion Gaztañaga
2014-09-20 17:29:41 +02:00
27f99047a8
Documentaion macros in adaptive_pool
Ion Gaztañaga
2014-09-20 17:29:26 +02:00
d2bd31e4d0
Add new documentation macros and tested in vector.
Ion Gaztañaga
2014-09-20 17:28:41 +02:00
3025cc41b6
Replace "boost/move/utility.hpp" with "boost/move/utility_core.hpp" to minimize dependencies.
Ion Gaztañaga
2014-09-17 23:36:23 +02:00
5313086d54
Updated position insertion code. Fixed backwards expansion calling too many destructors nd added more tests to detect similar errors.
Ion Gaztañaga
2014-09-17 21:52:34 +02:00
0ccf576872
Updated range insertion code for enhanced performance.
Ion Gaztañaga
2014-09-17 21:51:38 +02:00
f213f55f20
Includes: Updated detail/xxx.hpp includes to core/xxx.hpp, added some missing move/traits.hpp and removed some unused ones.
Ion Gaztañaga
2014-09-17 21:49:47 +02:00
2e009da1e8
Fixed some ordered insertion tags
Ion Gaztañaga
2014-08-29 15:03:42 +02:00
abc8f80ea6
Remove BOOST_MOVABLE_BUT_NOT_COPYABLE from basic_string_base as it comflicts with is_copy_constructible and other utilities that inspect the internal tag looking for noncopyable types.
Ion Gaztañaga
2014-08-29 14:19:54 +02:00
ff6e90a720
Removed incorrect deprecated function warning macros in MSVC compilers.
Ion Gaztañaga
2014-08-29 12:54:45 +02:00
c4018f343a
Merge branch 'matekm-initializer_list_support' into develop
Ion Gaztañaga
2014-08-29 12:53:13 +02:00
aae1f9df27
Fixed compilation error in C++03 compilers and updated changelist with initializer_lists.
Ion Gaztañaga
2014-08-29 12:52:41 +02:00
cbe191b5e3
add std::initializer_list support to flat_set and flat_multiset
Robert Matusewicz
2014-08-28 13:14:59 +02:00
e2b815c196
add std::initializer_list support for flat_map and flat_multimap
Robert Matusewicz
2014-08-28 09:42:08 +02:00
f8ebfa472a
Add std::initializer_list to the following containers:
Robert Matusewicz
2014-08-27 14:46:25 +02:00
d517cb9f1b
Merge branch 'matekm-add_initializer_list_to_static_vector' into develop
Ion Gaztañaga
2014-08-22 10:10:22 +02:00
089edf9d35
add support for std::initializer_list to boost::container::static_vector
Robert Matusewicz
2014-08-19 19:34:46 +02:00
40806c367d
Add metadata file.
Daniel James
2014-08-18 14:58:08 +01:00
791d53278a
Merge branch 'matekm-vector_support_for_std_initializer_list' into develop
Ion Gaztañaga
2014-08-17 10:54:35 +02:00
ac4dde2c6e
add std::initializer_list support for boost::container::vector
Robert Matusewicz
2014-08-15 20:15:01 +02:00
dd01853881
Erased tab & removed unneeded clear() in assignment
Ion Gaztañaga
2014-08-15 18:13:05 +02:00