Commit Graph
147 Commits
Author SHA1 Message Date
Ion Gaztañaga 2063004f7b Use reinterpret-cats for rv-cast to avoid sanitizer errors. 2018-06-21 23:57:29 +02:00
Ion Gaztañaga f76b4963b5 Optimize case with 256 keys or less. 2018-04-29 12:02:07 +02:00
Ion Gaztañaga a296628ce3 Add member "data" char array to aligned_storage::type so that placement new does not break strict alignment 2018-01-30 14:18:45 +01:00
Ion Gaztañaga e1eec15b1a - Add heap_sort and pdqsort to the benchmark.
- Refactor adaptive_sort and adaptive_merge.
2017-12-31 19:32:32 +01:00
Ion Gaztañaga 67d3dbe41b ADd new set_difference algorithm and tests. 2017-12-26 21:55:54 +01:00
Ion Gaztañaga 5c463507db Qualify boost::move calls to avoid ADL ambiguities 2017-12-26 21:55:14 +01:00
Ion Gaztañaga 72c3db3a8e Merge branch 'workaround-Wignored-attributes' of https://github.com/pgroke-dt/move into pgroke-dt-workaround-Wignored-attributes 2017-10-07 16:53:19 +02:00
Ion Gaztañaga fcf217b8ec Git Issue #15: Incorrect merge in adaptive_merge when the number of unique items is limited 2017-10-07 14:35:22 +02:00
Paul Groke 37d0a0bc04 Workaround for bogus [-Wignored-attributes] warning on GCC 6.x/7.x 2017-10-03 12:47:04 +02:00
Ion Gaztañaga 6cb4f456d1 Correct bug in op_buffered_partial_merge_to_range1_and_buffer which assumed first2 and *firstb are the same type. 2017-09-10 02:37:54 +02:00
Andrey Semashev 7aadf5c6c7 Use BOOST_MAY_ALIAS from Boost.Config.
This will add support for more compilers implementing the attribute.
2017-07-29 17:38:10 +03:00
Minmin Gong cfffd3b6b3 Adds support for MSVC ARM64 target. 2017-06-01 00:12:42 -07:00
Ion Gaztañaga 1dbc7bab5c Fixed Trac #12920 ("movelib::unique_ptr: incorrect pointer type for nested array") 2017-04-09 13:44:08 +02:00
Ion Gaztañaga 7c6e036240 Disable adl for iterator_to_raw_pointer 2017-04-07 16:02:33 +02:00
Ion Gaztañaga a70bbaa0e0 Support non raw pointer auxiliary memory. 2017-04-06 22:53:10 +02:00
Ion Gaztañaga 21cb31ad71 New low-level utilities to deal with pointers and iterators 2017-04-06 22:51:10 +02:00
Ion Gaztañaga a2d08c908d Add new macro that obtains the type of the last argument 2017-04-06 22:17:18 +02:00
Ion Gaztañaga 99f3f04d04 Add forceinline 2017-04-06 22:10:28 +02:00
Ion Gaztañaga 135e598bc4 Avoid reference to null errors in sanitizers 2016-11-12 23:54:22 +01:00
Ion Gaztañaga de55af3cbb Fixed adaptive_sort/merge bugs for stability. 2016-11-12 18:58:16 +01:00
Ion Gaztañaga 10e4dab3ac Remove redundant macro 2016-08-29 00:02:44 +02:00
Ion Gaztañaga 2a0db1e85e Add new macro utilities useful for tuple and piecewise_construct emulation in Boost.Container (part 2) 2016-08-23 02:09:00 +02:00
Ion Gaztañaga 2ef181c9d9 Add new macro utilities useful for tuple and piecewise_construct emulation in Boost.Container. 2016-08-23 01:34:55 +02:00
Ion Gaztañaga cfd6be4ab4 Documented limitations reported in Trac #12194 and Trac #12307 2016-07-29 11:55:10 +02:00
Ion Gaztañaga 1194a39ab3 Undo commit b474e8c28a as it breaks some Boost libraries. Emulation limitations will be documented. 2016-07-05 23:18:21 +02:00
Ion Gaztañaga e7d24400cb Refactor trivial copy/assign traits. Assume intrinsics don't guarantee the copy constructor/assignment is callable. 2016-06-30 16:23:05 +02:00
Ion Gaztañaga daabab5261 Add missing BOOST_MOVE_FORCEINLINE 2016-06-30 16:22:27 +02:00
Ion Gaztañaga fec7e30d36 Use BOOST_MOVE_TO_RV_CAST in the newly fixed assignment operator.
Update changelog
2016-06-30 12:22:41 +02:00
Ion Gaztañaga ce6eb5c73f Merge branch 'assignment' of https://github.com/Flamefire/move into Flamefire-assignment 2016-06-30 12:20:32 +02:00
Ion Gaztañaga 833e507326 Added cache usage to selection sort when external buffer is available. Refactored merge to right using reverse iterators. 2016-05-13 00:34:40 +02:00
Ion Gaztañaga 5a118de803 Added recursive inplace_stable_sort implementation 2016-05-13 00:28:29 +02:00
Ion Gaztañaga 75983a43ce Added "negate" functor and merge_bufferless_ONlogN implementation 2016-05-13 00:26:54 +02:00
Ion Gaztañaga 6e07bb846c Add three-way operations to move_op & swap_op 2016-05-13 00:22:20 +02:00
Ion Gaztañaga 94627830e6 Add reverse iterator to be used in sort algorithms 2016-05-13 00:19:37 +02:00
Flamefire 38d556a5bd Fix assignment of move-and-copy emulated classes 2016-05-12 13:30:08 +02:00
Ion Gaztañaga 122916d820 Removed tabs. 2016-03-23 22:11:25 +01:00
Ion Gaztañaga cae8d2dda3 Refactored and documented the sort and merge algorithm 2016-03-23 22:11:06 +01:00
Ion Gaztañaga d247eea058 Cleanup BOOST_MOVE_CONVERSION_AWARE_CATCH macros with is_same_or_convertible, which allows compatibility with more compilers and input iterators 2016-02-24 10:06:43 +01:00
Ion Gaztañaga 541f28037d Fixed Trac #11758: "BOOST_MOVABLE_BUT_NOT_COPYABLE doesn't reset private access with rvalue ref version" 2016-02-23 16:17:42 +01:00
Ion Gaztañaga d5981c52a9 Add experimental adaptive_merge/sort functions 2016-02-23 13:17:12 +01:00
Ion Gaztañaga ab98479759 Introduce BOOST_MOVE_FORCELINE, disabled by default, so that we can start speeding up debug builds that use Boost.Move 2015-12-24 10:39:57 +01:00
Ion Gaztañaga 827f6de30e Move BOOST_MOVE_HELPERS_RETURN_SFINAE_BROKEN to a more general header so that it can be used by other libraries like Intrusive 2015-10-17 09:38:38 +02:00
Ion Gaztañaga b79bb35b0f Add support for GCC 3.4 2015-10-12 16:18:31 +02:00
Ion Gaztañaga 09c75813a6 Refactor std namespace deduction for forward declarations 2015-09-14 22:33:20 +02:00
Ion Gaztañaga 17f9ce38c4 Merge branch 'develop' of https://github.com/ukreator/move into ukreator-develop 2015-09-14 16:34:28 +02:00
Dmitry Sobinov 172d49cf54 Fixed build errors with gcc and LLVM libc++ 2015-09-14 23:01:58 +10:00
Ion Gaztañaga bd9532a6a4 Documentation fixes:
- core.hpp: hide non-public macros
- default_delete.hpp: Hide detail code
- unique_ptr.hpp: Likewise
- utility_core.hpp: Document move_if_not_lvalue_reference
2015-09-13 21:50:34 +02:00
Ion Gaztañaga 6e42a16dd6 Add missing std:: namespace to size_t types. 2015-09-08 23:19:54 +02:00
Ion Gaztañaga 49e1fbb0f5 New macros for two-dimension expansion 2015-09-07 18:17:54 +02:00
Ion Gaztañaga b88cfcaf84 Fixed Trac #11510 ("unique_ptr: -Wshadow warning issued") 2015-07-31 21:54:35 +02:00