Ion Gaztañaga
4335c7874a
Fix -Wshadow warnings
2021-12-26 22:12:32 +01:00
Ion Gaztañaga
1378bd263f
Fixes #48 ("MSVC warning C4643: Forward declaring 'nothrow_t' in namespace std is not permitted by the C++ Standard")
2021-12-26 22:05:26 +01:00
Ion Gaztañaga
a51c5cc218
Fixes #45 ("Sort/merge bugs that affect boost::container::flat_map")
2021-11-03 15:44:44 +01:00
Ion Gaztañaga
00db7a0829
Fixes #42 ("<boost/move/unique_ptr.hpp> fails when BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE is set")
2021-10-21 16:11:15 +02:00
Ion Gaztañaga
55bbf331b0
Support Clang's -Wconversion -Wfloat-conversion -Wsign-conversion with -Werror
2021-10-20 00:16:34 +02:00
Ion Gaztañaga
82dfdf8e78
Fixes #44 ("Unused local type error with warnings-as-errors=on variant=release")
2021-10-19 16:12:10 +02:00
Ion Gaztañaga
2af840afc1
Support GCC's -Wconversion -Wfloat-conversion -Warith-conversion -Wsign-conversion warnings.
2021-10-16 15:36:46 +02:00
Ion Gaztañaga
122a84b366
Remove -Wconversion warnings
2021-10-05 23:30:54 +02:00
Ion Gaztañaga
260423791d
Fixes #40 ("Warning 4675 is not defined in MSVC")
2021-06-19 20:20:43 +02:00
Ion Gaztañaga
1d0320ae33
Add forward declaration to contiguous_iterator_tag.
2021-04-21 00:44:27 +02:00
Ion Gaztañaga
61c5c6f8d7
Fix syntax error for Mac version of nsec_clock()
2021-04-04 18:40:12 +02:00
Ion Gaztañaga
1164b93fb8
Make sure proper SFINAE is available changing BOOST_NO_SFINAE_EXPR with BOOST_NO_CXX11_SFINAE_EXPR
2021-01-04 23:26:03 +01:00
Ion Gaztañaga
029e5e81fd
Avoid boost/detail dependency.
2021-01-04 23:25:38 +01:00
Ion Gaztañaga
199195ee1b
Some workarounds for older compilers to see if #36 is fixed.
2020-12-31 17:13:42 +01:00
Ion Gaztañaga
a24923b8a4
Fixes #35 ('New nothrow move traits are incomplete')
2020-12-30 00:05:29 +01:00
Ion Gaztañaga
4a60a8eb06
Fix compilation issue for aligned_struct_wrapper and aligned_union.
2020-11-03 10:56:41 +01:00
Ion Gaztañaga
6d0bcff38a
Fix compilation error for MSVC 10 x86 in aligned_union
2020-11-03 09:40:01 +01:00
Ion Gaztañaga
3446ceeaaf
Use special MSVC x86 version for aligned_storage as the 32 bit ABI has problems when passing types (even with 8-byte alignment) by value.
2020-11-02 11:21:55 +01:00
Ion Gaztañaga
eb941db76c
Use "__is_trivially_constructible" intrinsic in Clang and GCC if available to avoid false positives with "__has_trivial_copy" intrinsics.
2020-10-30 09:39:20 +01:00
Ion Gaztañaga
ce209c4102
- Cache QueryPerformanceFrequency result
2020-10-23 14:11:24 +02:00
Ion Gaztañaga
75eb880a56
- Make sure testsuite passes with "exception-handling=off". Requires using a custom mini-timer since Boost.Timer depends on Boost.Chrono, and Boost.Chrono's dll does not compile without exceptions.
2020-10-22 23:12:51 +02:00
Ion Gaztañaga
7df81354d5
Avoid warning "conversions to arrays of unknown bound are only available with -std=c++2a..." when using -pedantic for GCC >= 10
2020-10-20 11:29:16 +02:00
Ion Gaztañaga
e4c47fcb90
- Remove config_begin.hpp/config_end.hpp includes in tests to avoid disabling warnings.
...
- Fixes #30 ("(void) C-cast is a non-portable way of suppressing compiler warnings").
2020-10-20 11:28:27 +02:00
Ion Gaztañaga
01d8832c9e
Add remove_cvref
2020-08-31 22:19:47 +02:00
Ion Gaztañaga
9a77e69bb5
Add newer BOOST_MOVE_HAS_NOTHROW_MOVE_CONSTRUCT intrinsics
2020-08-09 23:43:11 +02:00
Ion Gaztañaga
8dbce71f6b
Add //BOOST_MOVE_UREFANON macro
2020-08-09 23:41:47 +02:00
Ion Gaztañaga
fa3aa147b4
Add more BOOST_MOVE_FORCEINLINE
2020-06-03 00:19:06 +02:00
Edward Diener
1ff7da1267
Change __CODEGEARC__ to BOOST_CODEGEARC, which is defined in Boost config for the Embarcadero non-clang-based compilers.
2020-03-25 19:59:00 -04:00
Ion Gaztañaga
48243ffc03
Fixes #28 ("Warning C4624 on MSVC 2019")
2020-01-07 16:04:22 +01:00
Ion Gaztañaga
c283a2f123
Fixes #26 ("Invalid iterator increment/decrement in the last iteration of adaptive_sort_combine_blocks")
2019-04-24 20:59:00 +02:00
Ion Gaztañaga
bfdfca0b88
Fixes Issue #25
2019-04-08 00:32:28 +02:00
Romain Geissler
68d57d8cab
Fix gcc 9 deprecated copy warnings in antistable.
2019-03-22 10:34:14 +00:00
Ion Gaztañaga
756c964798
Fix issue #81 from Interprocess, self-moving range was corrupting range merging
2019-03-21 23:49:54 +01:00
Ion Gaztañaga
754eaae8e5
Default disable/enable_if to a nat type instead of void, as many SFINAE expressions in funcions default to void *values that are valid parameters.
2019-01-03 00:07:21 +01:00
Ion Gaztañaga
10074dc835
Optimize sequence generation and add STL-like adaptive algorithms to the benchmark.
2018-12-31 01:02:40 +01:00
Ion Gaztañaga
aa04994c5b
Improve adaptive_merge: reduce ranges before merging and optimize buffer usage.
2018-12-31 01:01:06 +01:00
Ion Gaztañaga
580ec87d09
Fix bug in merge_blocks_bufferless and improve bufer performance with buffer_and_update_key
2018-12-31 00:56:51 +01:00
Ion Gaztañaga
df08df2d9d
Add merge_adaptive_ONlogN for tests
2018-12-31 00:52:38 +01:00
Ion Gaztañaga
fcd33baf1f
Add stable_sort_adaptive_ONlogN2 for tests.
2018-12-31 00:51:49 +01:00
Ion Gaztañaga
3ce9452f93
Definitely disable MAY_ALIAS for emulation rv_ref except for GCC 4.4
2018-09-26 01:13:00 +02:00
Ion Gaztañaga
5e2e0f944e
Use BOOST_MAY_ALIAS only for GCC 4.4, as other MSVC, GCC, and Clang don't seem to need it.
2018-09-15 00:54:16 +02:00
Ion Gaztañaga
e25607d88e
Add additional nat types.
2018-09-09 00:24:00 +02:00
Ion Gaztañaga
ed05d54ebc
Use unsigned chars as aligned data types.
2018-09-09 00:23:46 +02:00
Christopher Hunt
210da842d8
Move may_alias attribute for xlC++ compatibility.
...
This also aligns usage of the `may_alias` attribute with other boost libraries. Fixes #19 .
2018-08-31 19:04:05 -04:00
Adam Shapiro
14f29a19f1
Corrected no_exceptions_support.hpp include.
...
This file appears to have been moved from the detail module to the
core module on 6/2014 in core commit 60c9a35d8 (detail commit
099854de). It appears that some package managers' Boost distributions
have duplicate copies of the file to work around the error.
2018-08-01 13:26:50 +00:00
Ion Gaztañaga
ddeb234127
Fix corner case when calculating whether external indexes can be used when merging. "supports_aligned_trailing" should not take into account that the first range includes n_keys.
2018-06-27 16:55:14 +02:00
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