Commit Graph
179 Commits
Author SHA1 Message Date
Maks Naumov e7f452bf91 Remove unused local variable 2016-11-17 00:02:29 +02:00
Ion Gaztañaga 764fcd88bf Merge branch 'copy_move_algo__parameter_fix' of https://github.com/think-cell/container into think-cell-copy_move_algo__parameter_fix 2016-11-13 00:26:58 +01:00
Ion Gaztañaga 77f5d7218d Avoid reference to null errors in sanitizers 2016-11-12 23:55:03 +01:00
Ion Gaztañaga ede225c9d2 Disable forceinline for old compilers due to bugs. 2016-11-12 19:07:54 +01:00
Ion Gaztañaga 1f3174baa7 Make build_number_seq with O(logN) instantiations instead of O(N) 2016-11-12 19:07:34 +01:00
Ion Gaztañaga 0a719901b6 Avoid warnings of unused "piecewise_construct" 2016-11-12 19:06:44 +01:00
Ion Gaztañaga d7bf947a4b Fix iterator_from_iiterator not value initializing its parent iterator 2016-11-12 19:06:23 +01:00
Tobias Germer 3830745c9f Fix parameter types in copy_move_algo.hpp: iterator_traits::difference_type -> allocator_traits::size_type 2016-10-19 14:13:46 +02:00
Tobias Germer 5ce1ad2611 Fix parameter type of uninitialized_copy_alloc_n_source() 2016-10-18 13:42:56 +02:00
Ion Gaztañaga da17190798 Fix incomplete Trac #9689 ("Add piecewise_construct to boost::container") resolution. scoped_allocator_adaptor_test was missing pair construct overloads. 2016-09-06 14:05:46 +02:00
Ion Gaztañaga f540b83ccd * Implemented merge operations for associative containers.
* Update tree-based containers to changes done in Intrusive internal utilities in order to fix Trac 12432.
2016-09-03 00:03:42 +02:00
Ion Gaztañaga 9f9fdeaa9a Adapt to Intrusive change that removed unneeded template parameters to tree_value_compare. 2016-08-29 16:53:17 +02:00
Ion Gaztañaga 4298d1984b * Add missing extract() and insert(node_type) funtion to associative containers.
* Simplify select1st
2016-08-29 00:06:57 +02:00
Ion Gaztañaga 1467c51a4e Implemented missing try_emplace member for maps. 2016-08-26 01:47:32 +02:00
Ion Gaztañaga e1cb88b399 Add missing include for boost::forward 2016-08-24 02:19:58 +02:00
Ion Gaztañaga db5c24e0e7 Fix piecewise_construct pair constructor for compilers with variadics and constructor forwarding. Current code unconditionally moves instead of forwarding. 2016-08-24 01:52:53 +02:00
Ion Gaztañaga 79a75f470e Add piecewise_construct construction to internal pair. 2016-08-23 02:14:19 +02:00
Ion Gaztañaga 0b98372af5 Silence most vexing parse warnings in clang. 2016-08-23 02:13:56 +02:00
Ion Gaztañaga eb42811079 Delegating constructors detection, as Boost.Config does not yet provide it. 2016-08-23 02:13:30 +02:00
Ion Gaztañaga c7407e34f6 Replaced int with std::size_t when building indexes. 2016-08-23 02:13:03 +02:00
Ion Gaztañaga 2d6f781a2f Implemented "insert_or_assign" for map-like containers. 2016-08-18 20:29:04 +02:00
Ion Gaztañaga fb1be6fa75 Fix Trac #12117 ("flat_set constructor with ordered_unique_range") adding checks to constructors in debug mode
Fix typos on value_type checks in flat_[multi]map.
2016-08-15 23:22:57 +02:00
Ion Gaztañaga 324130703e Fix incorrect header guards 2016-08-15 23:21:10 +02:00
Ion Gaztañaga d5adae2eda Fixes Trac #11802 ("Incorrect ordering after using insert() with ordered_range_t on a flat_multiset with a non-default sort order") 2016-08-12 00:43:16 +02:00
Ion Gaztañaga 37c1558a81 Fixed Trac #12256 (set<std::pair<int,int>>::insert cause compilation error in debug configuration in Visual Studio 2012) 2016-08-09 00:59:39 +02:00
Ion Gaztañaga 225e2da77e Revised noexcept expressions of default and move constructors in all containers. 2016-08-01 23:49:51 +02:00
Ion Gaztañaga 153fd7f474 Add more is_class, is_class_or_union, is_enum specialization to pair to allow recursive containers and type traits intrinsics 2016-06-25 11:04:55 +02:00
Ion Gaztañaga a52684beea Some dispatch_uses_allocator overloads don't forward the allocator argument 2016-06-25 11:03:57 +02:00
Ion Gaztañaga a7158c7975 Fixed Trac #12014: "boost::container::set can not insert const (ref) range" 2016-02-24 10:13:07 +01:00
Ion Gaztañaga 75f7c8fa73 Introduced BOOST_CONTAINER_FORCEINLINE so that mandatory inlining can be disabled selectively 2015-12-24 10:22:38 +01:00
Ion Gaztañaga a3262c0ae7 Fix for Trac #11820 ("compiler error when using operator[] of map") 2015-12-24 01:14:10 +01:00
Ion Gaztañaga c4505003c7 Minimize ifdef-ed code for BOOST_MOVE_HELPERS_RETURN_SFINAE_BROKEN 2015-10-17 10:17:30 +02:00
Ion Gaztañaga 1d5c367d62 Use BOOST_MOVE_HELPERS_RETURN_SFINAE_BROKEN as some compilers prefer return type SFINAE while others don't support it. 2015-10-17 09:39:56 +02:00
Ion Gaztañaga 7764e05444 Changes to support GCC 3.4 2015-10-12 18:51:08 +02:00
Ion Gaztañaga 79274e4aae Fixed Trac #11697 ("Wrong initialization order in tuple copy-constructor") 2015-09-30 22:35:17 +02:00
Ion Gaztañaga 85b2ed509b Added debug assertions via BOOST_ASSERT to check preconditions in several members. All checks are O(1) 2015-09-18 14:39:17 +02:00
Ion Gaztañaga f637fada71 Use newly refactored move/detail/std_fwd_xxx.hpp headers 2015-09-14 22:38:26 +02:00
Ion Gaztañaga f1f97518d3 Fixed Track #11627 and #11628 2015-09-09 09:48:09 +02:00
Ion Gaztañaga 33d2f0f7af Add Polymorphic Memory Resource utilities and rework the separately compiled library:
- Dlmalloc's based C function are boost_cont_xxx no longer exported, but wrapped into C++ linkage dlmalloc_xxx functions to effectively reuse Boost's dynamic library and autolink machinery instead of rewriting machinery to compile the C source file.
- Refactored scoped_allocator_adaptor's construct logic as it was shared with polymorphic allocator's one. Moved common logic to detail/dispatch_uses_allocator.hpp. Refactored also scoped_allocator_adaptor test utilities to be reused with polymorphic_allocator tests.
2015-09-07 19:16:46 +02:00
Ion Gaztañaga 77100c0bfc Removed commented code. 2015-09-07 19:08:48 +02:00
Ion Gaztañaga f9918cf967 Removed piecewise_construct_t as it's not used yet 2015-09-07 19:08:08 +02:00
Ion Gaztañaga a91f6d317b Fixed wrong call to vector::merge_unique in insert_unique and used placement construction in priv_merge_in_new_buffer 2015-07-21 23:40:52 +02:00
Ion Gaztañaga a7f60c1e8c Fix for Trac #11412 ("reserve() : null pointer passed to memmove") 2015-07-02 13:50:08 +02:00
Ion Gaztañaga 61a2f49ef2 Fixes Trac #11388 (boost::container::list::emplace_back broken on Visual Studio 2010) 2015-06-12 23:51:58 +02:00
Ion Gaztañaga 884c6e2bd2 Change spacing 2015-06-09 14:52:44 +02:00
Ion Gaztañaga c6e1760be0 Merge branch 'bug-11380' of https://github.com/ilor/container into ilor-bug-11380 2015-06-09 10:47:30 +02:00
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 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