Peter Dimov
24598bd45f
Take care of g++ warning on 4294967291
2021-10-17 00:47:28 +03:00
Peter Dimov
7f2a43226e
Take care of size_t -> int warnings under g++ 4.8
2021-10-17 00:31:08 +03:00
Peter Dimov
9348a89fb4
Fix msvc-14.1 errors caused by their unconstrained stdext::hash_value overload (!)
2021-10-17 00:09:20 +03:00
Peter Dimov
3f2612d36e
Update test/Jamfile, turn warnings-as-errors=on, fix g++ warning
2021-10-16 22:22:29 +03:00
Peter Dimov
3cf502b34c
Add generic hash_value functions for ranges to hash.hpp, remove those from extensions.hpp
2021-10-16 22:12:31 +03:00
Peter Dimov
b2e3beea3f
Remove unnecessary warning suppression
2021-10-16 21:02:28 +03:00
Peter Dimov
d308495a67
Add detail/is_unordered_range.hpp
2021-10-16 21:01:07 +03:00
Peter Dimov
00c837d523
Add detail/is_contiguous_range.hpp
2021-10-16 20:54:51 +03:00
Peter Dimov
415f2fafe2
Add detail/is_range.hpp
2021-10-16 20:44:32 +03:00
Peter Dimov
9bbedce029
Add missing include
2021-10-16 18:46:00 +03:00
Peter Dimov
2fc970b6ae
Simplify hash_value for integrals
2021-10-16 17:29:02 +03:00
Peter Dimov
4e11c855cb
Remove use of <functional>
2021-10-16 16:55:27 +03:00
Peter Dimov
bd379e1a46
Remove VMS workaround
2021-10-16 16:54:08 +03:00
Peter Dimov
b201ff97a8
Use Config macros for detecting C++17 headers
2021-10-16 16:43:11 +03:00
Peter Dimov
e89fe04479
Remove more BOOST_NO_FUNCTION_TEMPLATE_ORDERING workarounds
2021-10-16 16:26:42 +03:00
Peter Dimov
7ce3f759ec
Remove __DMC__ workarounds
2021-10-16 16:24:56 +03:00
Peter Dimov
917ac6a88a
Remove BOOST_HASH_CHAR_TRAITS
2021-10-16 16:22:33 +03:00
Peter Dimov
9782883434
Remove BOOST_NO_FUNCTION_TEMPLATE_ORDERING workarounds
2021-10-16 16:20:54 +03:00
Peter Dimov
f0ef7b8e84
Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION workarounds
2021-10-16 16:18:02 +03:00
Peter Dimov
21f2b5e1db
Fix hash_combine_impl to only test for a specific bit width and not for concrete types
2021-10-12 19:52:37 +03:00
Marshall Clow
e0331c0bd4
Remove use of non-existant Boost.Config macro BOOST_NO_CXX11_HDR_MEMORY
...
Thanks to Jeff Trull for the catch.
2020-09-10 20:09:23 -07:00
Edward Diener
1818113f4c
Change __BORLANDC__ to BOOST_BORLANDC, which is defined in Boost config for the Embarcadero non-clang-based compilers.
2020-03-23 11:50:36 -04:00
Andrey
5f858645a0
Removed usage of std::unary_function for C++17 compliance
2019-08-10 12:37:49 +03:00
Andrey
fd310d2706
Removed usage of std::unary_function for C++17 compliance
2019-08-10 11:59:22 +03:00
Andrey
90a0e36638
Removed usage of std::unary_function for C++17 compliance
2019-08-09 17:23:16 +03:00
Daniel James
83a874ed49
More general purpose support for iterators with odd reference type (trac #13501 )
...
In the last release I added explicit support for `vector<bool>` which wasn't
working with libc++ because the iterator's `operator*` returned a proxy
reference type. Other implementations return a `bool` for const iterators, so
they happened to work okay.
This solves the problem in a more general purpose way by instantiating
`hash_combine` for the iterator `value_type`. So the type returned by
`operator*` will be implicitly casted to the correct type.
2018-04-15 22:44:33 +01:00
Daniel James
601b8d0378
Include vector header, needed to get the iterator type
2018-03-29 21:57:52 +01:00
Daniel James
60f5e0d393
Add explicit allocator to vector<bool> overloads
...
Needed when container_fwd.hpp is used, as it doesn't specify the default
arguments.
2018-03-29 19:57:49 +01:00
Daniel James
e67d20d1c3
Fix std::vector<bool> with libc++
...
Temporary fix for:
https://svn.boost.org/trac10/ticket/13501
Will have a more general fix in 1.68.0
2018-03-29 19:14:56 +01:00
Daniel James
d20a68efdb
Move headers into top level of container_hash directory
2018-01-27 11:48:59 +00:00
Daniel James
d45e3986f3
Remove forwarding headers in container_hash
2018-01-27 11:47:09 +00:00
Daniel James
27b2732916
Make hash_value(monostate) inline
2018-01-21 21:09:50 +00:00
Daniel James
4d9f438823
std::variant, std::monostate support
2018-01-21 19:28:33 +00:00
Daniel James
ddc05d17df
std::optional support
2018-01-21 19:28:33 +00:00
Daniel James
b9ae7e7fb6
Clean up header detection for more headers + add optional
2018-01-21 18:21:46 +00:00
Daniel James
42bb81befa
Support std::error_code and std::error_condition
2018-01-21 14:31:31 +00:00
Daniel James
5c4edf4d7d
Fix string_view include on gcc 7.2
...
If it's included in anything earlier than c++-1z it errors.
2018-01-20 21:53:36 +00:00
Daniel James
def7a785a5
Remove some pointless code
2018-01-20 18:39:46 +00:00
Daniel James
8b77644ea0
Support std::string_view
2018-01-20 17:37:55 +00:00
Daniel James
6ca88a8146
Add forwarding headers at old locations
2017-12-29 14:12:03 +00:00
Daniel James
53fbb04e88
Move 'functional' headers and update paths
2017-12-29 13:58:48 +00:00
Daniel James
376000169c
Manually write out tuple overloads
...
A tad more usable this way.
2017-12-19 17:48:48 +00:00
Daniel James
bc09240437
Update paths for headers moved to different modules
...
Makes it easier to see dependencies.
2017-12-19 17:48:18 +00:00
Daniel James
4a4cb9f7a4
Use is_zero workaround on clang
...
The same warning appears on clang for windows, but the workaround wasn't
used because the gcc macro wasn't defined.
2017-09-19 12:42:01 +01:00
Daniel James
9c82e48bc9
Support for char16_t, char32_t, u16string, u32string
2017-05-31 22:19:54 +01:00
Daniel James
1b3bed82aa
Initial support for char32_t
2017-05-31 10:17:34 +01:00
Daniel James
7159a86166
Only support std::wstring when wchar_t is available
...
This hopefuly fixes #8552 .
https://svn.boost.org/trac/boost/ticket/8552
2016-11-18 15:13:46 +00:00
Daniel James
d0ee8e13bd
Support for removed function objects in C++17
...
std::unary_function and std::binary_function are removed in C++17, and
Visual C++ is the first compiler to do this (when the appropriate macro
is defined). I'm not sure what the long term solution should be, but
hopefully this will work for now.
2016-11-01 16:31:21 +00:00
Daniel James
36545f62cf
Try to avoid more warnings
2016-10-11 10:07:11 +01:00
Daniel James
c2764e22a7
Another signed conversion warning
2016-10-05 09:49:27 +01:00