Commit Graph

574 Commits

Author SHA1 Message Date
Ion Gaztañaga
04acc0cd63 Merge branch 'ecatmur-set-multiset-document-extract' into develop boost-1.65.1 boost-1.65.0 2017-07-11 17:25:44 +02:00
Edward Catmur
63174be55d Document set::extract and multiset::extract. 2017-07-11 12:28:07 +01:00
Ion Gaztañaga
c748e90b6b Remove unused to_raw_pointer file 2017-06-26 00:48:00 +02:00
Ion Gaztañaga
38ab3c8582 Update changelog with Git Pull #51 2017-06-06 14:45:47 +02:00
Ion Gaztañaga
3edab187f4 Merge branch 'garyfurnish-master' into develop 2017-06-06 13:14:37 +02:00
Ion Gaztañaga
d7eaedc1a9 Merge branch 'master' of https://github.com/garyfurnish/container into garyfurnish-master 2017-06-06 13:14:18 +02:00
Gary Furnish
e0aaf744a5 Fix integer rollover that triggers clang ubsan when U is unsigned 2017-06-05 18:18:38 -06:00
Ion Gaztañaga
d5aede745e Unify std::binders and lambdas with custom binders 2017-05-26 22:31:26 +02:00
Ion Gaztañaga
a451aeda93 Merge branch 'DanielaE-feature/replace-deprecated' into develop 2017-05-26 22:02:27 +02:00
Ion Gaztañaga
424b5e5848 Merge branch 'feature/replace-deprecated' of https://github.com/DanielaE/boost.container into DanielaE-feature/replace-deprecated 2017-05-26 22:02:11 +02:00
Ion Gaztañaga
9c09a0cbc7 Update changelog 2017-05-24 23:06:20 +02:00
Ion Gaztañaga
d24c461ef7 Merge branch 'bmwiedemann-develop' into develop 2017-05-24 22:51:43 +02:00
Bernhard M. Wiedemann
ace2c5668e Fixed bug Trac #13038
Have constant link order
to make builds reproducible.
See https://reproducible-builds.org/ for why this is good.

Without this patch g++ would order functions in libboost_container.so.1.64.0
depending on random order of files in the build system's filesystem.
2017-05-22 10:47:07 +02:00
Ion Gaztañaga
717e8ef461 Merge branch 'joker-eph-remove_useless_allocator_copy_in_map' into develop 2017-05-16 16:30:31 +02:00
Ion Gaztañaga
ec91367383 Review all associative containers and implement a different constructor overload to avoid any unnecessary copy construction of the predicate or the allocator. 2017-05-16 16:29:49 +02:00
Mehdi Amini
40451e4bf7 Add variant of map constructors to avoid useless extra allocator copy when using initializer list
Many existing constructors have this form:

  map(std::initializer_list<value_type> il, const Compare& comp = Compare(), const allocator_type& a = allocator_type())

The issue is that a temporary allocator_type is constructed, and
passed to the base class where it is used to copy-constructed the
rebound allocator.
This temporary allocator_type here is always destroyed at the end
of the map() constructor. For stateful allocators this is not
desirable.
The solution is to adopt what libc++ is doing and have to constructors:

  map(std::initializer_list<value_type> il, const Compare& comp = Compare(), const allocator_type& a)

and

  map(std::initializer_list<value_type> il, const Compare& comp = Compare())

This way, unless an allocator is provided by the client, no extra temporary
creation/destruction occurs.
2017-05-08 12:39:06 -07:00
Daniela Engert
36c334f414 replace deprecated/removed C++98 binders by equivalent lambda expressions.
Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-04-28 19:15:58 +02:00
Ion Gaztañaga
5e3e5d4fe6 Merge branch 'develop' 2017-04-24 21:13:25 +02:00
Ion Gaztañaga
6580c94573 Documentation fixes 2017-04-08 00:23:41 +02:00
Ion Gaztañaga
3516da36b0 Doxygen documentation fixes 2017-04-08 00:17:23 +02:00
Ion Gaztañaga
1d727753e2 Use directly boost::movelib::to_raw_pointer/iterator_to_raw_pointer 2017-04-07 16:07:00 +02:00
Ion Gaztañaga
a7e2bed8f1 Use adaptive_sort for merge operations. 2017-04-06 23:35:08 +02:00
Ion Gaztañaga
903b568d13 Split set/map tests as some compilers refuse to allocate too many sectios in the object file 2017-04-06 23:34:30 +02:00
Ion Gaztañaga
d6749960fc Implement extract_sequence and adopt_sequence for flat ordered associative containers 2017-04-05 16:06:31 +02:00
Ion Gaztañaga
cdb022fda2 Fix ambiguous constructor calls for piecewise_construct and Boost vs std tuples 2017-04-05 16:04:53 +02:00
Ion Gaztañaga
01d7c71ea8 Fix node_handle bugs:
-> Bad allocator destruction in swap
-> Wrong assertion in operator=
-> Make dangerous functions private

Added full testsuite.
2017-04-02 00:20:38 +02:00
Ion Gaztañaga
eebd4c8cf9 Merge branch 'develop' boost-1.64.0-beta2 boost-1.64.0 2017-03-28 14:57:09 +02:00
Ion Gaztañaga
e919196b8c Fix GitHub Pull #46: "Fix use of propagate_on_container_swap" 2017-03-28 13:40:08 +02:00
Ion Gaztañaga
ab6e21494b Merge branch 'tsnorri-develop' into develop 2017-03-28 13:33:54 +02:00
Ion Gaztañaga
d08bceb6d9 Merge branch 'develop' of https://github.com/tsnorri/container into tsnorri-develop 2017-03-28 13:33:42 +02:00
Ion Gaztañaga
dd2205bd6a Merge branch 'develop' 2017-03-28 12:52:23 +02:00
Ion Gaztañaga
99488659ec Update changelog with ticket #12915 2017-03-28 12:51:33 +02:00
Ion Gaztañaga
4d05ce8738 Fix for Ticket #12915: "Buffer overflow in boost::container::vector (affects flat_set)" 2017-03-28 12:37:22 +02:00
Tuukka Norri
45b56d4361 Fix use of propagate_on_container_swap 2017-03-20 23:15:08 +02:00
Ion Gaztañaga
fff0b3f2c0 Merge branch 'develop' boost-1.64.0-beta1 2017-02-24 22:09:25 +01:00
Ion Gaztañaga
1261ac3308 Fix emplace_back return type also in compilers without variadic templates. Update changelog. 2017-02-24 22:07:20 +01:00
Ion Gaztañaga
a15e85d4db Merge branch 'think-cell-vector_emplace_back' into develop 2017-02-24 18:01:57 +01:00
Tobias Reh
5fe2dba504 emplace_back must return reference to back(), not to *end() 2017-02-24 15:33:30 +01:00
Ion Gaztañaga
2a7dd5d1e8 Merge branch 'develop' 2017-02-23 19:56:05 +01:00
Ion Gaztañaga
ce5996c9bd Cosmetic indentation 2017-02-23 19:55:41 +01:00
Ion Gaztañaga
08cce5ebe5 Update basic_string with missing C++11 and C++17 interfaces:
- Default npos arguments in append, insert, compare
- Initializer list support
- Non-const data()
2017-02-21 23:08:11 +01:00
Ion Gaztañaga
865c69bab7 Changed string_view interoperability to a templated solution in order to support also std::string_view.
Added missing members and testcases.
2017-02-21 14:27:18 +01:00
Ion Gaztañaga
cd70af350d Merge branch 'develop' 2017-02-17 11:58:00 +01:00
Marshall Clow
fde7e1fbdd Add support for boost::string_view into container::basic_string
Conversion from a `basic_string` to a `string_view`, and make all the comparisons work.

Ion - if you like this, I'll work up some tests, too.
2017-02-13 11:35:27 -08:00
Ion Gaztañaga
1404933491 Delete unused hash table 2017-02-06 11:50:53 +01:00
Ion Gaztañaga
23e9e8b494 Fix copyright notice. 2017-01-12 14:58:44 +01:00
Ion Gaztañaga
a5db65fc4a Merge branch 'zerotypos-found-inspection_report' into develop 2017-01-12 14:53:35 +01:00
Ion Gaztañaga
f71fee5140 Merge branch 'inspection_report' of https://github.com/zerotypos-found/container into zerotypos-found-inspection_report 2017-01-12 14:53:20 +01:00
Ion Gaztañaga
79f5977688 Fixes Ticket #12749 container::pmr::polymorphic_allocator compilation error 2017-01-12 14:49:31 +01:00
Ion Gaztañaga
38947de89c Update static vector project 2017-01-12 14:49:02 +01:00