Commit Graph
295 Commits
Author SHA1 Message Date
Ion Gaztañaga 215ef2617e Fix #34 ("-Wdeprecated-copy on gcc9) 2019-03-05 11:26:29 +01:00
Marcel Raad 4a254f5ebf Fix -Wextra-semi clang warnings
Remove superfluous semicola.
2019-02-25 10:55:25 +01:00
Ion Gaztañaga 9137a38982 Fixes #38 2019-02-12 23:20:49 +01:00
Ion Gaztañaga 3618260489 fix GitHub Issue #35 ("key_of_value on treap_set seems to be broken in 1.69") 2019-02-12 00:23:56 +01:00
Ion Gaztañaga 911774278a Declare more BOOST_INTRUSIVE_FORCEINLINE functions in tree and list containers. 2019-02-11 10:49:55 +01:00
Ion Gaztañaga 962eed5edb Rollback to previous tree_value_compare SFINAE, as enable_if imported from movelib now defaults to a sfinae-friendly type 2019-01-03 01:17:50 +01:00
Ion Gaztañaga 015fdaf9c5 Add missing BOOST_INTRUSIVE_FORCEINLINE 2019-01-03 01:17:01 +01:00
Ion Gaztañaga 558a204832 Add null-pointer checks 2019-01-03 01:16:46 +01:00
Ion Gaztañaga c6298131cb Use voider to adapt "sqrt2_pow_max" to the new enable_if default type 2019-01-03 01:16:26 +01:00
Ion Gaztañaga 98e5f0ee09 Import "voider" from movelib 2019-01-03 01:14:53 +01:00
Ion Gaztañaga b9c3b34651 Merge branch 'fix_voidptr_keys' of https://github.com/Lastique/intrusive into Lastique-fix_voidptr_keys 2019-01-02 02:17:16 +01:00
Andrey Semashev f847bd57bf Converted tabs to spaces. 2018-12-14 19:00:50 +03:00
Andrey Semashev 01d575bed4 Fix compilation in case if key is void*, again.
This commit fixes a compilation error with gcc 8.2 about ambiguous function
calls in tree_value_compare when the user specifies a key that has type void*.
The fix take approach similar to https://github.com/boostorg/intrusive/pull/21.
2018-12-14 18:46:28 +03:00
bad-ed cbf83bbebb hashtable: fixed build with BOOST_INTRUSIVE_VARIADIC_TEMPLATES defined 2018-10-10 17:14:50 +03:00
Ion Gaztañaga 2ab3421b17 In functions that modify data structures, take pointers by value instead of by reference, to avoid aliasing issues. 2018-09-27 10:14:16 +02:00
Ion Gaztañaga d94fbc76cc Add customized return type for tree_value_compare 2018-09-15 00:58:43 +02:00
Ion Gaztañaga fa3a6af325 Add BOOST_INTRUSIVE_FORCEINLINE to unordered_multiset constructors 2018-09-15 00:58:21 +02:00
Ion Gaztañaga d7b0d7c1e4 Silence unharmful -Wmaybe-uninitialized warning 2018-06-22 00:00:56 +02:00
Ion Gaztañaga 00efc25144 Reorder disabled warnings for clarity 2017-12-10 23:34:48 +01:00
Ion Gaztañaga 53b1aef2da Refactor suggested_upper_bucket_count/suggested_lower_bucket_count to be independent of the hashtable. 2017-12-09 13:01:49 +01:00
Ion Gaztañaga 71317671ec Add GCC's "-Wuninitialized" workaround. When initializing the pointer of flags part of an uninitialized pointer plus bit object, the other part is used uninitialized. It's harmless warning but annoying for the user. 2017-12-09 13:01:02 +01:00
Ion Gaztañaga 1ad2b26ee4 Avoid using external reference in loop to avoid aliasing pesimization. 2017-11-07 00:46:23 +01:00
Oliver Kowalke f4047cd759 fix null_node construction form default ctor
- NVCC fails parsing null_node((node_ptr()))
2017-10-31 15:54:01 +01:00
Louis Dionne 80c22df9dc [hashtable] Fix typo in documentation 2017-10-16 09:18:13 +09:00
Ion Gaztañaga a10de1bd60 Closes #25 in GitHub ("Document the behavior of move constructor for slist") 2017-10-14 12:06:21 +02:00
Ion Gaztañaga 7f5caca12e Extract BOOST_INTRUSIVE_HAS_TYPE trait 2017-09-07 20:17:05 +02:00
Ion Gaztañaga ac718c54ed Fix call to intrinsic is_convertible with incomplete types in MSVC 14.1 2017-06-08 21:51:53 +02:00
Ion Gaztañaga db14782f0f Boost Trac #12698
GitHub Pull #23
GitHub Pull #24
2017-06-08 14:02:21 +02:00
Minmin Gong b6cd6e26ad Adds support for MSVC ARM64 target. 2017-06-01 00:11:06 -07:00
Ion Gaztañaga 4b44049e22 Merge branch 'patch-1' of https://github.com/Lastique/intrusive into Lastique-patch-1 2017-04-08 14:05:58 +02:00
Ion Gaztañaga 018a39c433 Use directly boost::movelib::pointer_element/to_raw_pointer 2017-04-07 16:05:44 +02:00
Ion Gaztañaga db15ff6c08 Allow non std::size_t size_type. 2017-04-06 23:32:39 +02:00
Ion Gaztañaga 9268e2a3d8 Reuse utilities from Boost.Move 2017-04-06 23:32:15 +02:00
Andrey Semashev 140613d1ba Fix a typo in the docs 2017-04-04 15:45:11 +03:00
Ion Gaztañaga b25ab5112a Fixed typo in swap function 2017-03-02 09:15:55 +01:00
Ion Gaztañaga 6510ac498e Fixed ticket #12761 ("intrusive::set::swap doesn't swap the comparison function") 2017-03-02 08:29:55 +01:00
Ion Gaztañaga 95bba145ea Remove maybe uninitialized warnings when using insert_commit_data_t 2017-02-23 19:55:07 +01:00
Andrey Semashev b1da5c25b4 Fix compilation in case if key is void*
If key type is `void*`, wrong `operator()` is chosen because of the dummy argument that is used for SFINAE. As a result the key comparison adapter invokes the user's predicate with only one argument, which fails to compile.

Use a more distict type for SFINAE in the dummy arguments. Fixes ticket #12745.
2017-01-14 15:33:01 +03:00
Ion Gaztañaga 1a6bbccf5d Fixes Ticket #12556: member_value_traits.hpp has a missing #include 2016-11-13 00:16:10 +01:00
Ion Gaztañaga 7853a74c01 Avoid forceinline in old compilers due to bugs 2016-11-12 19:03:16 +01:00
Ion Gaztañaga 5c9f2d04cb Add missing forceinlines 2016-11-12 19:02:46 +01:00
Ion Gaztañaga bbb4f724d0 More documentation fixes in tree-based containers, to make root() documentation available. 2016-09-03 16:43:49 +02:00
Ion Gaztañaga 6d38384e36 Document root()/croot() functions in tree-based containers, and add a test case for them. 2016-09-03 13:28:44 +02:00
Ion Gaztañaga 9ac060a6ae Fixed Trac #12432 ("Forced KeyOfValue creation when using custom compare on insert_check") 2016-09-03 00:01:55 +02:00
Ion Gaztañaga 36fb49abc9 Fix sg_[multi]set not working when merging from a set with a different comparison.
Update testcase to test merging from a different comparison.
2016-09-01 18:55:56 +02:00
Ion Gaztañaga b2498a0da4 Reduce simbol length using alog_types instead of algorithms directly in generic_hook. 2016-09-01 00:59:18 +02:00
Ion Gaztañaga 21a2107d9a * Implemented merge operations in ordered associative containers 2016-08-31 23:42:14 +02:00
Ion Gaztañaga 310ddc3485 Removed unneeded template parameters to tree_value_compare to reduce symbol length. 2016-08-29 16:52:31 +02:00
Ion Gaztañaga 2de5382dbb Simplify tree_value_compare overloads to avoid compilation errors in some old GCC versions. 2016-08-29 00:03:46 +02:00
Ion Gaztañaga 5a7892a859 Document is_linked behaviour for slists with option linear<true>, as mentioned in Trac ticket #10328 ("is_linked is broken for linear slist") 2016-08-04 23:44:01 +02:00