tomerv
ea070dc30f
Fix minor documentation error
2023-10-28 23:35:43 +03:00
Ion Gaztañaga
cfc6b4e510
Add workaround for MSVC 14-0 bad code generation in slist_test
2023-05-04 23:12:23 +02:00
Ion Gaztañaga
fc46064c29
Fix UB when downcasting null pointers, use pointer_trait' specialized function
2023-05-02 22:42:29 +02:00
Ion Gaztañaga
ff11320469
Reduce the usage of BOOST_INTRUSIVE_FORCEINLINE due to unwanted side effects in some compilers
2023-05-02 01:30:31 +02:00
Ion Gaztañaga
aec1f8a15e
Disable forceinline with Clang, see https://github.com/llvm/llvm-project/issues/62202
2023-04-18 22:23:12 +02:00
Ion Gaztañaga
1014e97fb2
Simplify intrusive dependencies dropping Boost.Core
2023-02-01 21:35:40 +01:00
Ion Gaztañaga
e4ec3fb937
Add missing boost/assert.hpp or boost/static_assert.hpp
2023-01-18 22:28:56 +01:00
Ion Gaztañaga
4a1f695906
Fixes #77 ("Suppress unused variable warnings on node_count (clang 15)")
2022-12-11 00:29:53 +01:00
Ion Gaztañaga
825aedad55
Improve "modfunc" performance
...
Fixes #79 ("boost/intrusive/hashtable.hpp: build failure (undeclared indentifier)")
2022-11-07 00:16:44 +01:00
Ion Gaztañaga
7c9bb4d540
Add constant value to the main struct in BOOST_INTRUSIVE_OPTION_CONSTANT
2022-10-01 18:23:37 +02:00
Ion Gaztañaga
e41303a26b
Disable forceinline with MinGw, as it has bugs
2022-08-24 14:30:23 +02:00
Ion Gaztañaga
c0377800b2
Fix -Wshadow warnings in GCC renaming "node" arguments with "n".
2022-08-23 07:58:45 +02:00
Ion Gaztañaga
bf072b5f24
Add make_iterator_advance make_iterator_uadvance
2022-08-21 02:21:04 +02:00
Ion Gaztañaga
27c00ae498
Fixes #75 ("Bug: Rehashing an empty unordered_set with cache_begin set to true hits an assert")
2022-06-25 18:32:27 +02:00
Ion Gaztañaga
05bb58091e
Add experimental fastmod_buckets option
2022-06-13 00:42:58 +02:00
Ion Gaztañaga
466ff07d15
Add operator!
2022-06-13 00:41:49 +02:00
Ion Gaztañaga
3c5c8cec3f
Rewritten hash semi-intrusive containers to improve compilation times and runtime performance. Added experimental "linear_buckets" option.
2022-05-04 23:36:34 +02:00
Ion Gaztañaga
d376c8b453
Added BOOST_INTRUSIVE_FORCEINLINE to constructor
2022-05-04 23:34:47 +02:00
Ion Gaztañaga
8be3b54d35
Add some BOOST_INTRUSIVE_FORCEINLINE to trivial functions, and take advantage of new algorithms like end_node and detach_and_dispose
2022-05-04 23:34:19 +02:00
Ion Gaztañaga
ba298c775e
Add BOOST_INTRUSIVE_FORCEINLINE to some trivial functions
2022-05-04 23:16:16 +02:00
Ion Gaztañaga
482c0cfe83
Add pointer specialization for value_less
2022-05-04 22:55:51 +02:00
Ion Gaztañaga
1d6576e6d5
Add simple constructor for stateless slist_iterator
2022-05-04 22:55:24 +02:00
Ion Gaztañaga
dbde900bf9
Add end_node, is_empty, is_sentinel, set_sentinel, transfer_after and detach_and_dispose functions
2022-05-04 22:54:38 +02:00
Ion Gaztañaga
d70f8667e1
Add unlink_after_and_dispose and detach_and_dispose functions
2022-05-04 22:52:15 +02:00
Ion Gaztañaga
f8d3650131
Add is_empty function
2022-05-04 22:51:06 +02:00
Ion Gaztañaga
06d74a1709
Inject new Boost.Move iterator functions.
2022-01-12 00:58:41 +01:00
Ion Gaztañaga
afe294063b
Remove some forceinline attributes that might be counter-productive and add noexcept to others.
2022-01-04 00:34:33 +01:00
Ion Gaztañaga
64743a7158
Increase minimum version for forceinline usage in MSVC as bad code generation was detected in some cases
2022-01-04 00:23:58 +01:00
Ion Gaztañaga
af99d7be6a
Activate BOOST_MOVE_FORCEINLINE with GCC > 5, since some code generation problems were detected in tests executed under MingW.
2022-01-02 00:27:28 +01:00
Ion Gaztañaga
0be2758375
Convert boost::iterator traversal tags into std tags to avoid unneeded overloads that confuse some older compilers like MSVC 12
2021-12-30 23:08:53 +01:00
Ion Gaztañaga
01b4f6264c
Take all pointers by value to avoid aliasing issues in release mode
2021-12-29 14:02:03 +01:00
Ion Gaztañaga
691154b887
Changes to support -Wcast-align=strict
2021-12-28 15:09:07 +01:00
Ion Gaztañaga
65353e038b
Fix -Wshadow warnings
2021-12-27 14:37:12 +01:00
Ion Gaztañaga
87081669c3
Avoid -Wshadow warning
2021-12-27 00:45:36 +01:00
Tim Blechmann
d5b9a4eac0
list: fix remove / remove_and_dispose
...
`value_equal` is a simple wrapper to `operator==`, but does not bind the
argument to a predicate
2021-12-22 22:57:32 +08:00
Ion Gaztañaga
ac7dfda17a
Merge pull request #66 from jarekpelczar/develop
...
list_iterator: Fix declaration of node shadowing member
2021-11-17 15:54:08 +01:00
Ion Gaztañaga
5c4d116b82
Support Clang's -Wconversion -Wfloat-conversion -Wsign-conversion with -Werror
2021-10-20 00:17:13 +02:00
Ion Gaztañaga
bc8d455437
Rename iterator_next with unsigned distance to iterator_unext
2021-10-18 17:31:00 +02:00
Ion Gaztañaga
bd15948a5d
Fix wrong #include <cstddef> place.
2021-10-18 17:17:41 +02:00
Ion Gaztañaga
2eeee6cb4c
Support GCC's -Wconversion -Wfloat-conversion -Warith-conversion -Wsign-conversion warnings.
2021-10-16 15:56:54 +02:00
Ion Gaztañaga
a4180b9e9f
Remove GCC's -Wconversion warnings
2021-10-06 00:08:18 +02:00
Jarosław Pelczar
7f35d14d83
list_iterator: Fix declaration of node shadowing member
...
When code is compiled with -Wshadow (outside GCC's "system" include
paths), the compiler will complain:
warning: declaration of ‘node’ shadows a member of ‘boost::intrusive::list_iterator<ValueTraits, IsConst>’
Signed-off-by: Jarosław Pelczar <jarek@jpelczar.com >
2021-08-16 10:36:33 +02:00
Ion Gaztañaga
79d2a6df4b
Put swap tests inside generic associative container tests so that they are executed for every tree type.
2021-06-20 02:01:20 +02:00
Ion Gaztañaga
edb8f9e6fd
Merge branch 'bugfix/node-swap' of https://github.com/dmsteck/intrusive into dmsteck-bugfix/node-swap
2021-06-19 20:49:07 +02:00
Ion Gaztañaga
cbc81b9417
Fixes #63 ("nop splice removes element")
2021-06-19 19:39:40 +02:00
Daniel Steck
300ffd2363
unintended whitespace change
2021-05-13 23:30:19 +01:00
Daniel Steck
8a652bd355
C++03 and (C)
2021-05-13 23:28:33 +01:00
Daniel Steck
d4e76658a1
initial commit
2021-05-13 23:21:05 +01:00
Ion Gaztañaga
a633906847
Fixes #59 ("Add noexcept support to the library").
2021-04-19 11:17:48 +02:00
Ion Gaztañaga
1cec79608f
Fixes #60 ("Licensing question for math.hpp"). Removes questioned, SO-based code since it was just an alternative version for non-MSVC/non-GCC compatible compilers.
2021-04-18 14:10:53 +02:00