Tomasz Śniatowski
76f3c1ddcc
Fix std:: forward declaration compile error on GCC with libc++
...
The code should not assume that libc++ is only ever used with Clang.
Fixes issue #11380 , https://svn.boost.org/trac/boost/ticket/11380
2015-06-08 08:51:46 +02:00
Ion Gaztañaga
e198da5946
Use Intrusive's tree_value_compare class instead of duplicating code
2015-06-04 11:42:47 +02:00
Ion Gaztañaga
4f9d397507
Simplified swapping
2015-06-04 11:42:27 +02:00
Ion Gaztañaga
f02f5ec21f
fix bug when erasing last elements
2015-06-04 11:40:46 +02:00
Ion Gaztañaga
ef54ab8784
Avoid branches in capacity()
2015-06-04 11:39:10 +02:00
Mitsuru Kariya
d94f52ef7d
fix stable_vector#index_of's doxygen comment
2015-06-02 11:22:22 +09:00
Ion Gaztañaga
4cdb8caca4
Merge branch 'patch-1' of https://github.com/timsong-cpp/container into timsong-cpp-patch-1
2015-04-19 11:05:51 +02:00
timsong-cpp
6bf6c553fd
Fix bug in capacity()
...
See http://stackoverflow.com/q/29727368/2756719 ; the bit-twiddling version is not equivalent to the original `return (index_size ? (index_size - ExtraPointers + extra_capacity) : index_size);`; it ends up subtracting, rather than adding, `extra_capacity`.
2015-04-19 04:30:08 -04:00
Ion Gaztañaga
3246e11ca2
Added new experimental merge functions to speed up flat_xxx range insertion
2015-04-14 15:22:06 +02:00
Ion Gaztañaga
6477543f3b
Updated to new meta-functions reused from Intrusive/Move
2015-04-14 15:21:46 +02:00
Ion Gaztañaga
ad54608d78
Fix Trac #11139
2015-03-31 11:23:14 +02:00
Ion Gaztañaga
02e8762afe
Update small_vector documentation + update links to Howard Hinnant's papers.
2015-03-08 08:53:23 +01:00
akumta
c194a6794d
Update copy_move_algo.hpp
...
For ticket# 11075: https://svn.boost.org/trac/boost/ticket/11075
2015-03-05 11:45:34 -08:00
Ion Gaztañaga
e5f069da2b
Reenginered partially propagable allocator support in vector. storage_is_unpropagable is now the basic building block, which is simpler and less error-prone.
2015-03-01 22:25:27 +01:00
Ion Gaztañaga
d39b1c143c
Add missing initializer list overload taking an additional allocator.
2015-02-28 23:46:08 +01:00
Ion Gaztañaga
8db0f4ad64
small_vector's initializer list constructor was not implemented and tested.
2015-02-28 00:17:46 +01:00
Ion Gaztañaga
90b3af4229
Document small_vector_base
2015-02-27 19:21:58 +01:00
Ion Gaztañaga
3949963645
Fix "void multiset::insert(std::initializer_list<value_type> il)" calling base_t::insert_unique instead of base_t::insert_equal
2015-02-27 19:19:23 +01:00
Ion Gaztañaga
8cdfec7890
Add experimental small_vector class
2015-02-26 00:35:59 +01:00
Ion Gaztañaga
6c5e527c60
Improve allocator propagation test with new constructors and refactor code to avoid too many wrappers.
2015-02-26 00:32:32 +01:00
Ion Gaztañaga
7160bea2aa
Explicit constructor for allocator_destroyer
2015-02-26 00:27:53 +01:00
Ion Gaztañaga
4c2b352d7c
update operator== with allocator_traits::equal
2015-02-26 00:26:53 +01:00
Ion Gaztañaga
342bd73aeb
Implement storage_can_be_propagated and is_always_equal.
2015-02-26 00:25:14 +01:00
Ion Gaztañaga
c2ea5da716
Fix move constructors with unequal allocators and move/copy assignment of tree.
2015-02-26 00:22:23 +01:00
Ion Gaztañaga
012781cc94
Try to support GCC's versioned std namespace
2015-02-26 00:16:47 +01:00
Ion Gaztañaga
7b3d70ad83
Fix pair's swap to avoid unqualified swap calls.
2015-02-26 00:16:13 +01:00
Ion Gaztañaga
5ea8e24923
Update "are_elements_contiguous" for move iterators.
2015-02-26 00:15:23 +01:00
Ion Gaztañaga
f47bf08ccc
Try to definitely fix Trac Issue #9931 (flat_map::insert(ordered_unique_range_t...) fails with move_iterators")
2015-02-03 16:09:47 +01:00
Ion Gaztañaga
22f1d32f7b
Addd new constructors to containers, according to C++14's new constructors taking allocator arguments.
2015-02-03 14:08:29 +01:00
Ion Gaztañaga
a7adc46a54
More changes to include boost/config.hpp before testing BOOST_HAS_PRAGMA_ONCE
2015-02-02 16:00:58 +01:00
Ion Gaztañaga
10d027aa9c
Include boost/config.hpp before testinG BOOST_HAS_PRAGMA_ONCE.
2015-02-02 15:26:53 +01:00
Ion Gaztañaga
fc0bfefab4
Merge branch 'smart-quotes' of https://github.com/yuriks/container into yuriks-smart-quotes
2015-02-01 00:10:39 +01:00
Yuri Kunde Schlesner
d6d554d395
Replace "smart quotes" Latin1 characters
...
They cause MSVC to print warnings every time this file is included if on
a Japanese locale.
2015-01-31 21:00:17 -02:00
Ion Gaztañaga
b786c8f716
Replaced BOOST_CONTIANER_NOEXCEPT with BOOST_NOEXCEPT
2015-01-28 22:11:00 +01:00
Ion Gaztañaga
9fede24d7e
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
2015-01-26 00:33:40 +01:00
Ion Gaztañaga
ef7137a945
Replace BOOST_MOVE_IMPDEF with BOOST_CONTAINER_IMPDEF
2015-01-26 00:30:01 +01:00
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