nobody
e5e8814e12
Add some missing 'inline's.
...
[SVN r38564]
2007-08-10 11:08:19 +00:00
nobody
6753d4b507
Add overloads of hash_value for more built in types. They're not strictly
...
needed and aren't in the original specifiction but they avoid a warning. See
ticket #1095 for details.
[SVN r38563]
2007-08-10 10:32:21 +00:00
nobody
f6851b0cf9
This commit was manufactured by cvs2svn to create tag
...
'Version_1_34_1'.
[SVN r38286]
2007-07-24 19:28:14 +00:00
Daniel James
26cfba5031
Put the borland workarounds back - it still seems to need them. Will probably
...
have to do something else on top of this for any problems this causes.
[SVN r37803]
2007-05-27 09:28:50 +00:00
Daniel James
0ecfe356ca
Update copyright on hash headers.
...
[SVN r37801]
2007-05-27 09:07:09 +00:00
Daniel James
abc57e81c6
Remove deprecated hash header files.
...
[SVN r37800]
2007-05-27 09:04:59 +00:00
Daniel James
67efd5c627
Full namespace for std::size_t.
...
[SVN r37779]
2007-05-25 23:58:33 +00:00
Thomas Witt
a967703ab5
Hash warning patch 2 see Trac #952
...
[SVN r37737]
2007-05-22 03:55:10 +00:00
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
2353e7abd8
Try turning off a borland workaround in the new version of borland, as it
...
seems to be causing problems in the tests.
[SVN r37426]
2007-04-12 20:33:48 +00:00
Daniel James
585813f9fe
Rename hash_detail::float_limits => hash_detail::limits, since it's also used
...
for integers in the tests.
[SVN r35559]
2006-10-11 18:58:40 +00:00
Daniel James
40844fb29e
Only use the float.h macros on OpenBSD, it seems that on FreeBSD numeric_limits is actually a better option.
...
[SVN r35501]
2006-10-05 21:22:56 +00:00
Daniel James
3732ea7566
Fix a typo.
...
[SVN r35500]
2006-10-05 21:21:43 +00:00
Daniel James
869a303733
Remove checks for float macros, I was being over-paranoid.
...
[SVN r35349]
2006-09-26 23:28:34 +00:00
Daniel James
26473491c4
Attempting to work round the dodgy std::numeric_limits<long double> on
...
some BSDs.
[SVN r35345]
2006-09-26 20:35:58 +00:00
Daniel James
eb5ef5e134
Move the hash extensions into their own header, which hopefully makes the
...
extension implementation a little clearer. It also fixes a problem where the
visual C++ include once pragma was preventing the extensions from being loaded
on the second include.
[SVN r35314]
2006-09-24 20:00:47 +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
39b4e38367
The Digital Mars workarounds aren't required for the latest version.
...
[SVN r34510]
2006-07-12 10:13:45 +00:00
Daniel James
8ff9a154ad
Comment out an assert which is giving bogus failures. On platforms where it isn't possible to detect NaN or infinity the full hash computation is performed on them. For NaN the result doesn't matter (since NaN != NaN), for infinity it should always give the same result), so the calculation works but unfortuanately, I don't know how to correctly check that v is what I expect in the assertion.
...
I could use a different hash function when I don't have fpclassify/fpclass but that shouldn't be necessary.
[SVN r34490]
2006-07-09 22:50:43 +00:00
Daniel James
645cac6ae3
Update copyright details.
...
[SVN r34390]
2006-06-25 09:59:05 +00:00
Daniel James
1a219729ee
Avoid a warning on Visual C++
...
[SVN r34329]
2006-06-17 21:22:51 +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
cae97c67d8
Tweak the float hashing algorithm to perform fewer calls to ldexp for some
...
types and possibly generate a better hash value.
[SVN r34273]
2006-06-11 15:29:09 +00:00
Daniel James
a4d9b52094
Improve support for floating point types with radix != 2.
...
[SVN r34272]
2006-06-11 14:52:55 +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
e42ae3e82e
Oops again, I checked in the wrong version of hash.hpp, which had a broken
...
version of boost::hash_value<complex> in it. So fix that.
[SVN r34207]
2006-06-06 20:51:24 +00:00
Daniel James
e143c22dbd
Add support for long long to Boost.Hash.
...
[SVN r34202]
2006-06-06 20:13:33 +00:00
Daniel James
1b625ac7ab
Merge VC7 workaround from HEAD.
...
[SVN r34197]
2006-06-06 17:38:38 +00:00
Daniel James
7c9c2c3ff8
Workaround for Visual C++ 7.
...
[SVN r34191]
2006-06-06 08:14:23 +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
00975444e0
Hash workarounds for Digital Mars.
...
[SVN r33958]
2006-05-07 17:52:38 +00:00
Daniel James
bda8f4845d
Merge OS X hash float fix from head to rc_1_34_0.
...
[SVN r33917]
2006-05-03 18:34:43 +00:00
Daniel James
4ebb14ea3b
Don't use fpclassify for hashing on OS X.
...
[SVN r33875]
2006-04-30 19:16:08 +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
39255c201d
Don't forward declare STL containers when using STLport - this is slightly over the top as the forward declarations seem to work on mingw-3_4_4-stlport-5_0, so maybe it's just a Visual C++ problem, but at this stage I'd rather keep things simple.
...
[SVN r33178]
2006-02-28 20:47:59 +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
3382c46b6d
Use _fpclass and fpclassify on less platforms. Hopefully will use them more widely after the release.
...
[SVN r33047]
2006-02-21 00:12:36 +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
5bdae3b096
In hash_float, only use _fpclass on Visual C++, I'll find out about other compilers later.
...
[SVN r32833]
2006-02-11 21:15:15 +00:00
Daniel James
9d41ce0eda
A couple of workarounds for Digital Mars.
...
[SVN r32786]
2006-02-09 19:22:54 +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
2dcf38a04a
Use fpclassify/_fpclass for the hash function on compilers where I
...
know it's available.
[SVN r32782]
2006-02-09 19:11:09 +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
534d526c90
Make hash_float.hpp use its own combine function. This serves two purposes:
...
1. hash_float is no longer dependent on the main hash header.
2. hash_float(0) == 0 which makes it easier to implement hash<complex>(),
although this might lead to users assuming that it can be expected even though
it isn't part of the documented interface.
[SVN r32780]
2006-02-09 19:07:33 +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