Commit Graph
35 Commits
Author SHA1 Message Date
Thomas Witt 2cd51443f5 Hash warning patch see Trac #952
[SVN r37705]
2007-05-17 23:07:38 +00:00
Daniel James ffd0154fb6 Rolling back changes I shouldn't have checked in.
[SVN r37699]
2007-05-15 22:05:41 +00:00
Daniel James 5c5ff11ee0 Clean up the 64-bit std::size_t workaround and hopefully suppress the warning
on 32-bit Visual C++.


[SVN r37694]
2007-05-15 19:44:46 +00:00
Daniel James bb548f8100 Update the Digital Mars workarounds for the latest version.
[SVN r34526]
2006-07-13 07:54:41 +00:00
Daniel James 63f3778db3 Add support for long long on win64 as that's the only 64-bit type on that platform (and std::size_t is 64 bit).
[SVN r34287]
2006-06-12 17:58:12 +00:00
Daniel James a302ecffab Get hashing std::size_t working on 64-bit Visual C++.
[SVN r34253]
2006-06-08 22:12:16 +00:00
Daniel James 1b625ac7ab Merge VC7 workaround from HEAD.
[SVN r34197]
2006-06-06 17:38:38 +00:00
Daniel James 0785097bac Merge hash workarounds for Digital Mars to the release branch.
[SVN r34036]
2006-05-20 07:34:48 +00:00
Daniel James 962f978081 Update the copyright comments in the hash headers.
[SVN r33370]
2006-03-18 15:54:53 +00:00
Daniel James 1814f98a27 Reintroduce workaround for hashing const built-in array on Visual C++.
[SVN r33164]
2006-02-28 00:49:14 +00:00
Daniel James 7d6f6fe0b4 Remove TODO note to self.
For the record: I removed the overload because it was causing an ambiguity that I was too lazy to work out at the time. It turned out this was because wchar_t was defined as unsigned short - using BOOST_NO_INTRINSIC_WCHAR_T was the right way to deal with this so the overload no longer needs to be disabled.


[SVN r33114]
2006-02-26 15:58:37 +00:00
Daniel James 6b0b4bb486 Fix a typo in the workaround code for compilers without partial specialization.
[SVN r33104]
2006-02-25 15:17:01 +00:00
Daniel James ae412b3215 Add support for the BOOST_HASH_NO_EXTENSIONS macro.
[SVN r32900]
2006-02-13 18:21:20 +00:00
Daniel James b5058c7e75 Hold your nose, it's a Visual C++ 6.5 workaround. For some reason it requires
boost::hash to define operator() taking const and non-const arguments.


[SVN r32783]
2006-02-09 19:11:54 +00:00
Daniel James a5844bc9bf Since all the hash functions are now declared in a single header, there's no
need for the call_hash hack on compliant compilers. So only use it on
compilers where it's needed.


[SVN r32781]
2006-02-09 19:10:03 +00:00
Daniel James ffec55693b Move all the boost/functional/hash/*.hpp files into a single file
(hash/hash.hpp for now, but will eventually move into hash.hpp), add warnings
that the old headers are deprecated.


[SVN r32778]
2006-02-09 18:57:07 +00:00
Daniel James 71641ebdcd Move include errorno & limits from hash.hpp into hash_float where they should be.
[SVN r32777]
2006-02-09 18:55:35 +00:00
Daniel James 7ea3aed050 Move the float hash function into its own header.
[SVN r32594]
2006-02-05 19:51:29 +00:00
Daniel James 9521ea7ea3 Use BOOST_WORKAROUND in boost/functional/hash/hash.hpp
[SVN r32589]
2006-02-05 16:31:45 +00:00
Daniel James ebf1937e6d Use hash_fwd.hpp in the main hash header.
[SVN r32588]
2006-02-05 16:27:19 +00:00
Daniel James 07c14534ec Use container_fwd.hpp for the hash functions.
[SVN r32583]
2006-02-05 14:44:24 +00:00
Daniel James b96ed7b984 Check errno after calling frexp - this is pretty slow and unecessary on most platforms, but this close to release it seems better to be over cautious.
[SVN r29255]
2005-05-28 12:10:33 +00:00
Daniel James 85593ea401 Initialise the exponent before calling frexp in the hash float function.
[SVN r29200]
2005-05-26 07:36:26 +00:00
Daniel James 638ca2658f Another attempt at getting the hash array tests to pass on Borland.
[SVN r28390]
2005-04-21 22:20:43 +00:00
Daniel James 685cd00a7b Another fix for the Borland hash array code, and get rid of my attempt at working around Borland problems with infinity and NaN in the hash float functions. It seems impossible to do anything with them.
[SVN r28286]
2005-04-17 09:09:42 +00:00
Daniel James 1db2d3a822 Remove workaround for bug in gcc 4.0 which appears to have been fixed.
[SVN r28282]
2005-04-16 16:59:30 +00:00
Daniel James 3bb76776e6 Overload hash_value for non-constant arrays.
[SVN r28276]
2005-04-16 10:32:29 +00:00
Daniel James c62d82ea29 Use non-const references on Visual C++ 6.5 to work around a bug with array references.
On Borland add a pointer overload of hash_range to use instead of the array workaround that I checked in earlier today.

Fix the array size calculation for compilers with function template ordering.


[SVN r28228]
2005-04-13 22:56:43 +00:00
Daniel James 59efa07c7c Borland workaround for hashing arrays.
[SVN r28226]
2005-04-13 20:24:50 +00:00
Daniel James b1def5cf1d Deal with NaN & infinity in the hash float function on Broland.
[SVN r28186]
2005-04-12 20:23:09 +00:00
Daniel James a5012dfc7c Better version of the built in array hash function.
[SVN r28089]
2005-04-10 20:07:50 +00:00
Daniel James 4727f1070a Implement hash functions for built-in arrays. Uses partial specialization
instead of function overloading - which disobeys the specification of
the extension (hash_combine is defined in terms of hash_value, but hash_value
doesn't deal with every case now).


[SVN r28078]
2005-04-10 12:36:24 +00:00
Daniel James 427b07ac6e Remove the Boost.Range overloads of hash_range.
[SVN r28051]
2005-04-07 21:08:58 +00:00
Daniel James 2160ce6891 Include config files before any other header to prevent Visual C++ 6 warnings.
Remove Boost.Range support when there are no const volatile specializations, as it currently requires them to compile. Hopefully this will be changed back in the future.


[SVN r27914]
2005-04-01 22:38:39 +00:00
Daniel James f97df4faab Initial import of hash function headers - so that they can be used by
Boost.MultiIndex.


[SVN r27819]
2005-03-27 22:58:52 +00:00