c03b2357ce
Erased tab & removed unneeded clear() in assignment
Ion Gaztañaga
2014-08-15 18:12:18 +02:00
a166923e83
Fixed documentation errors with "position", "pos", "hint" and "p" iterators indicating insertion/emplace position.
Ion Gaztañaga
2014-08-15 17:20:57 +02:00
f1b3535e7c
- Documented N1780 guarantees for associative containers
Ion Gaztañaga
2014-08-15 17:20:18 +02:00
d0f8fe793c
add support for std::initialize_list in stable_vector constructor, operator=, assign and insert methods
Robert Matusewicz
2014-08-15 15:32:07 +02:00
24cf58a0f0
Fixed wrong comment on required allocator type
Ion Gaztañaga
2014-08-14 13:39:28 +02:00
dbca0d532a
Merge branch 'jzmaddock-patch-2' into develop
Ion Gaztañaga
2014-08-14 01:10:35 +02:00
d51ef9db46
Added NO_MALLINFO and NO_MALLOC_STATS defines to dlmalloc to avoid dependencies. Implemented boost_cont_allocated_memory based on internal_mallinfo
Ion Gaztañaga
2014-08-14 00:27:22 +02:00
d92b97e2c8
Added non-conformance chapter about self-referencing operations.
Ion Gaztañaga
2014-08-14 00:25:53 +02:00
08343e5d5d
Passed insert_vs_emplace to the regression tests group
Ion Gaztañaga
2014-08-04 08:53:25 +02:00
644bea4404
Added test for const prvalues in insert vs. emplace
Ion Gaztañaga
2014-08-04 00:41:47 +02:00
03582c4498
Workaround for MSVC compilers, that fail to properly handle template specializations with constness subtleties.
Ion Gaztañaga
2014-08-03 22:08:59 +02:00
fab3df0a04
Added emplace optimization specializations for compilers with rvalue references but without variadic templates (e.g. MSVC10&11)
Ion Gaztañaga
2014-08-03 11:09:54 +02:00
90be67e81f
Improved placement proxy to avoid temporary objects when constructing from values from the target type.
Ion Gaztañaga
2014-08-02 21:30:39 +02:00
08b26b5d99
Reintroduced tabs in VS project, as the IDE does not like spaces.
Ion Gaztañaga
2014-08-02 21:29:20 +02:00
8337efdfd7
Updated changelog
Ion Gaztañaga
2014-08-02 10:15:55 +02:00
d849f80ea5
Removed tabs.
Ion Gaztañaga
2014-07-30 16:32:55 +02:00
85821789f7
Merge branch 'ibmsoe-aix_fix' into develop
Ion Gaztañaga
2014-07-30 16:20:32 +02:00
717959061e
Make debug benchmarks faster reducing iterations.
Ion Gaztañaga
2014-07-20 14:43:58 +02:00
941eb27e1d
Updated and documented non-standard optimizations based on memset
Ion Gaztañaga
2014-07-20 14:43:12 +02:00
960d649e99
Added missing AIX definition for sched.h (previously out of scope).
Axel Ismirlian
2014-07-16 15:48:12 -05:00
819b365f5e
Fixed unqualified iterator_to_pointer & to_raw_pointer calls that were causing compilation problems due to ADL.
Ion Gaztañaga
2014-06-16 00:23:19 +02:00
3b1d9af986
Merge branch 'develop'
Ion Gaztañaga
2014-06-14 23:02:42 +02:00
4ea1e46fcd
Replaced several "addressof()" uses with the more correct "iterator_to_raw_pointer". Updated changelist with bug #9637.
Ion Gaztañaga
2014-06-14 22:50:53 +02:00
077ccf2935
Merge branch 'develop'
Ion Gaztañaga
2014-06-14 12:42:41 +02:00
5afad7cd0c
Added optimization for types that can be value initialized with memset.
Ion Gaztañaga
2014-06-14 12:41:58 +02:00
258c6ab2e0
Merge branch 'develop'
Ion Gaztañaga
2014-06-13 10:51:59 +02:00
9c582e906a
Documentation fixes:
Ion Gaztañaga
2014-06-13 10:49:09 +02:00
b6f8b0fa90
Merge branch 'develop'
Ion Gaztañaga
2014-06-12 21:50:01 +02:00
ac7fb5a86b
Replaced incorrect "&*iterator" expressions (which fails with value_types with overloaded "operator&") with "iterator_to_raw_pointer" or "iterator_to_pointer" utilities.
Ion Gaztañaga
2014-06-12 10:01:52 +02:00
bf5c140180
Added missing "element_type" to the pseudo-pointer operator_arrow_proxy to be compatible with pointer_traits
Ion Gaztañaga
2014-06-12 10:01:38 +02:00
9ec026937b
Use pointer traits to obtain element_type in "to_raw_pointer"
Ion Gaztañaga
2014-06-11 15:54:54 +02:00
c2100f349e
Removed dead comment
Ion Gaztañaga
2014-06-11 14:58:43 +02:00
7f98fcb9bc
Merge branch 'develop'
Ion Gaztañaga
2014-06-09 06:42:03 +02:00
11721001a3
Removed unused Boost.MPL and Boost.Iterator includes.
Ion Gaztañaga
2014-06-09 06:40:39 +02:00
7cc5fe6cc6
Merge branch 'develop'
Ion Gaztañaga
2014-06-06 13:28:28 +02:00
790a8798d4
Fixes Trac issue #9801 ("I can no longer create and iterator_range from a stable_vector")
Ion Gaztañaga
2014-06-06 13:21:03 +02:00
976cf1f689
Merge branch 'develop'
Ion Gaztañaga
2014-05-28 15:57:47 +02:00
8c1bfe2881
Removed trailing whitespaces
Ion Gaztañaga
2014-05-28 15:50:13 +02:00
bd6ffc603b
Merge branch 'develop'
Ion Gaztañaga
2014-04-26 20:07:09 +02:00
a67982bd07Fixes#9955 (Using memcpy with overlapped buffers in vector)
Ion Gaztañaga
2014-04-26 13:14:36 +02:00
390b897357
Merge branch 'develop'
Ion Gaztañaga
2014-04-24 00:04:10 +02:00
71b99683b9
Reverted a (premature) optimization that can lead to out of bound write.
Ion Gaztañaga
2014-04-21 22:52:06 +02:00
5013f3fd69Fixes#9931 ("flat_map::insert(ordered_unique_range_t...) fails with move_iterators")
Ion Gaztañaga
2014-04-21 21:23:24 +02:00
0b720f82b4Fixed#9916: "Allocator propagation incorrect in the assignment operator of most". Fixed#9932: "Missing assignment operator from related static_vector". Added missing details from issue #9915
Ion Gaztañaga
2014-04-21 13:59:49 +02:00
bffd6c036cFixes#9915. Uses intrusive is_convertible in MSVC compilers. Removes some throw conditions in the documentation produced by the allocator copy constructor (as the standard requires no-throw guarantee for those).
Ion Gaztañaga
2014-04-17 00:06:59 +02:00
ecd26ebcc9
Merge branch 'develop'
Ion Gaztañaga
2014-04-16 14:44:42 +02:00
7ca156661f
Sync'ed with deveop changes.
Ion Gaztañaga
2014-02-14 22:58:38 +01:00
ae31857124
Merge branch 'develop'
Ion Gaztañaga
2014-02-14 19:58:30 +01:00
2015537778
Create first merge point for Git
Ion Gaztañaga
2014-02-14 19:34:10 +01:00
ba596fc83cFixes#9648, (string construction optimization)
Ion Gaztañaga
2014-02-11 15:05:35 +01:00
edc4e6da80
Reverted alloc_lib extension change. It breaks Windows builds.
Ion Gaztañaga
2014-02-10 21:26:20 +01:00
30431adf1e
Changed extended allocator file extension from C to C++ as some toolsets (like clang) don't ignore C++ options when compiling C files.
Ion Gaztañaga
2014-02-09 23:20:44 +01:00
4f2d7944fa
Corrected test_suite name
Ion Gaztañaga
2014-02-06 11:53:36 +01:00
a4c0188173
Divided set benchmark in several smaller benchmark files
Ion Gaztañaga
2014-02-06 11:13:22 +01:00
a4b839628a
Implemented unique associative containers' equal_range using lower_bound_range which is more efficient with heavy comparison functions.
Ion Gaztañaga
2014-01-20 13:20:02 +01:00
abc50c7275
Improved unique associative container count function. Improved also flat_xxx's equal_range.
Ion Gaztañaga
2014-01-19 19:18:57 +01:00
6d6656fcc1
Improved set test with search functions and added set<string> test to benchmark.
Ion Gaztañaga
2014-01-19 18:35:40 +01:00
2b804c880b
Fix GCC warning about unused typedef in release mode.
Ion Gaztañaga
2014-01-05 22:37:09 +01:00
a93e23f22a
Inherit set/multiset/map/multimap from tree to avoid redundant instantiations in debug mode and simplify maintenance.
Ion Gaztañaga
2014-01-05 22:36:01 +01:00
3af1cdefe0
Inherit flat_set/flat_multiset from flat_tree to avoid code instantiation in debug mode and several trivial functions. Declarations still there for doxygen documentation.
Ion Gaztañaga
2014-01-05 22:29:33 +01:00
4872931d29
Documented template parameters.
Ion Gaztañaga
2014-01-05 22:25:12 +01:00
2b8f88b034
Documented template parameters
Ion Gaztañaga
2014-01-03 14:52:56 +01:00
d3eb21000b
Derived flat_set from flat_tree to avoid redefining almost all functions and minimize instantiation of multiple function in debug mode.
Ion Gaztañaga
2014-01-03 14:52:13 +01:00
01486761a6
Added support for configurable tree-based associative containers. In addition to RB trees, AVL, Scapegoat and Splay trees are experimentally supported.
Ion Gaztañaga
2014-01-03 13:26:57 +01:00
2489010881
Document comparison operators for non tree associative containers.
Ion Gaztañaga
2014-01-03 12:43:03 +01:00
4dc3df6b6b
Use "insert_after" instead of "insert" to avoid unneeded checks.
Ion Gaztañaga
2014-01-03 10:37:09 +01:00
fc8507b48c
Some comments in the testcases separating test groups.
Ion Gaztañaga
2013-12-26 13:10:54 +01:00
9ac4ae6fdc
Added a static assert to make sure that flat_[xxx]map::allocator_type::value_type is std::pair<Key, T>. Fixed some test cases failing to do that properly.
Ion Gaztañaga
2013-12-24 19:00:52 +01:00
95e6ba9839
Extracted key_node_compare from tree to tidy a bit the implementation and ease maintenance.
Ion Gaztañaga
2013-12-24 18:58:01 +01:00
ed0704797d
Refactored tree cloners into a single standalone class to avoid unnecessary instantiations and simplify maintenance.
Ion Gaztañaga
2013-12-24 12:58:28 +01:00
41c2056ec6
- Modified relational operators to be friend inline definitions. This allows compilation checking when instantiating classes, avoids predeclarations and results in less verbose code.
Ion Gaztañaga
2013-12-23 23:34:28 +01:00
f2947c115e
Changes during Git migration:
Ion Gaztañaga
2013-12-23 10:47:20 +01:00
b1d4ef3a2eFixes#9338
Ion Gaztañaga
2013-11-18 09:32:44 +00:00
332ab85387
Fixed typo causing errors in clang builds.
Ion Gaztañaga
2013-09-30 04:48:56 +00:00
62227ae741
Fixed typo causing errors in clang builds.
Ion Gaztañaga
2013-09-30 04:47:29 +00:00
59c5ed7781
Fixed error in default_init_allocator, it should not construct objects, only allocate raw memory.
Ion Gaztañaga
2013-09-29 11:39:34 +00:00
232e18956a
Fixed error for test_allocator::max_size(), now returns std::size_t(-1)
Ion Gaztañaga
2013-09-29 11:38:47 +00:00
3921e08520
Tagged vector_alloc_holder constructors that allocate but don't initialize memory to improve maintainability.
Ion Gaztañaga
2013-09-29 11:37:30 +00:00
5b9b2c26dc
Implemented 2x grow factor for vector capacity
Ion Gaztañaga
2013-09-29 11:36:06 +00:00
254095432e
Default initialization for vector-like containers Complexity guarantees for associative container constructors and ordered input ranges Fix for #9166 Added benchmark for associative containers Removed check for old MSVC compilers and #pragma once.
Ion Gaztañaga
2013-09-26 21:35:57 +00:00
14f092ab00
Default initialization for vector-like containers Complexity guarantees for associative container constructors and ordered input ranges Added benchmark for associative containers Fixes#9166
Ion Gaztañaga
2013-09-26 18:05:25 +00:00
59b2793df7
Remove obsolete MSVC check from pragma guard
Stephen Kelly
2013-09-26 13:02:51 +00:00
eb4b320fed
Container: Fix two pragma guards.
Stephen Kelly
2013-09-25 21:17:34 +00:00
11ba31a353
Last merge for 1.55 (Interprocess)
Ion Gaztañaga
2013-09-16 17:01:45 +00:00
a52d0b92cc
Last merge for 1.55 (Container)
Ion Gaztañaga
2013-09-16 17:00:22 +00:00
1e4be891d0
Remove unused header.
Ion Gaztañaga
2013-09-15 19:47:36 +00:00
a7b88d804cFixes#9009
Ion Gaztañaga
2013-09-12 22:00:51 +00:00
ed57e6e619Fixes#9108
Ion Gaztañaga
2013-09-12 21:50:38 +00:00
772b568187
Removed SGI copyright as after rewrites it is no longer applicable.
Ion Gaztañaga
2013-09-09 19:36:55 +00:00
7d69794f7e
Removed SGI copyright as after rewrites it is no longer applicable.
Ion Gaztañaga
2013-09-09 19:36:10 +00:00
5ddef213a2
Removed SGI copyright as after rewrites it is no longer applicable.
Ion Gaztañaga
2013-09-09 19:27:42 +00:00
5a4073434b
Removed SGI copyright as after rewrites it is no longer applicable.
Ion Gaztañaga
2013-09-09 19:26:50 +00:00
afd2b24b3b
Merged Container to the release branch
Ion Gaztañaga
2013-09-08 19:29:06 +00:00
3e945acc9bFixes#9092
Ion Gaztañaga
2013-09-08 18:58:21 +00:00