Commit Graph

57 Commits

Author SHA1 Message Date
Daniel James
1cea89464b Add tests for linking two object files that include the hash libraries.
[SVN r29710]
boost-1.33.0
2005-06-20 21:45:54 +00:00
Daniel James
74ec71fe8d 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
8090093f06 Initialise the exponent before calling frexp in the hash float function.
[SVN r29200]
2005-05-26 07:36:26 +00:00
Daniel James
16b4e4b261 Fix a typo in hash_float_test.
[SVN r29120]
2005-05-21 17:15:10 +00:00
Daniel James
bbf337598b Tweak the hash tests a bit more.
[SVN r29119]
2005-05-21 17:10:39 +00:00
Daniel James
386d46aff0 Write a better error message when the denormalised minimum float hash test
fails.


[SVN r29118]
2005-05-21 16:46:53 +00:00
Daniel James
8b483e7d86 Try to make sure that the different functions in hash_function_pointer_test
really are different.


[SVN r28833]
2005-05-11 21:32:17 +00:00
Daniel James
177884e8a3 Try to fix the failing denorm_min hash_value test by explicitly casting the
result of denorm_min() (I think it might be returning the wrong type).


[SVN r28553]
2005-05-01 13:43:56 +00:00
Daniel James
7e6b470009 Change the description of functional/hash.
[SVN r28436]
2005-04-23 13:07:27 +00:00
Daniel James
f2a59837b0 Add some links to the hash documentation, acknowledgements for the review,
fixed some errors.


[SVN r28427]
2005-04-22 22:08:49 +00:00
Daniel James
78b6d8731e Fix a clumsy mistake in hash_float_test
[SVN r28402]
2005-04-22 06:37:41 +00:00
Daniel James
7c2f3b6bf5 Change hash_custom_test to have a cleaner implementation (along the lines of
Peter Dimov's suggestion) and to only include the hash headers after declaring
the class.


[SVN r28394]
2005-04-21 23:43:51 +00:00
Daniel James
dd93c7c9a4 Change hash_float_test to write out some false failures instead of failing.
[SVN r28393]
2005-04-21 23:41:12 +00:00
Daniel James
7092068156 Another attempt at getting the hash array tests to pass on Borland.
[SVN r28390]
2005-04-21 22:20:43 +00:00
Daniel James
572ec155db Split the hash pointer tests into tests for normal pointers and function pointers, as function pointers fail on old versions of Visual C++, and add a note about this to the hash documentaion.
[SVN r28389]
2005-04-21 22:18:38 +00:00
Daniel James
9a96585cb9 Update hash documentation:
Rename to Boost.Functional/Hash. Add some extra details to the library header.
Use macros to link functions & classes.
Add a note about a couple of portability issues.


[SVN r28373]
2005-04-21 08:44:14 +00:00
Daniel James
dbcb234320 Various changes to the hash documentation including:
- Updated for splitting the books example into books.hpp & books.cpp
- Added the array overloads of hash_value, and the new signature for pointers.
- Split up the overloads of hash_value in boost/hash/hash.hpp.


[SVN r28341]
2005-04-20 15:16:29 +00:00
Daniel James
412ec29987 Change the books hash example to have a separate header.
[SVN r28340]
2005-04-20 15:02:00 +00:00
Daniel James
d8eb578ae5 Add redirect for the hash documentation.
[SVN r28339]
2005-04-20 14:58:43 +00:00
Daniel James
1cf16e51b9 Change the NaN hash test to a warning.
[SVN r28318]
2005-04-18 17:16:02 +00:00
Daniel James
91dfc92b0e Don't bother testing the hash functions with infinity and NaN on borland. Remove a few pointless lines from hash_value_array_test.
[SVN r28287]
2005-04-17 09:12:01 +00:00
Daniel James
f2afc2a08d 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
7223c8da60 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
0fae4b4f65 Add tests against Peter's spec.
[SVN r28281]
2005-04-16 16:56:27 +00:00
Daniel James
72cd8cdaa1 Overload hash_value for non-constant arrays.
[SVN r28276]
2005-04-16 10:32:29 +00:00
Daniel James
43e79383ae Add a test for hash_value called with an array. hash_value tests for other
types will be added to their normal tests.


[SVN r28275]
2005-04-16 10:31:20 +00:00
Daniel James
dbed5ebafa 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
976683836e Borland workaround for hashing arrays.
[SVN r28226]
2005-04-13 20:24:50 +00:00
Daniel James
9cd9c5780f Remove the forced fail in the hash float tests on Borland, since the bug should now be fixed.
[SVN r28187]
2005-04-12 20:25:15 +00:00
Daniel James
be1be0d1fe Deal with NaN & infinity in the hash float function on Broland.
[SVN r28186]
2005-04-12 20:23:09 +00:00
Daniel James
557e8e7ff9 Add some hash examples.
[SVN r28139]
2005-04-11 22:26:01 +00:00
Daniel James
0a43718366 Setup hash float function config for Tru64 on alpha and add some comments on
the different libraries & compilers.


[SVN r28138]
2005-04-11 22:20:33 +00:00
Daniel James
8c8baeedd8 Make the float hash tests a tad bit more informative.
[SVN r28137]
2005-04-11 22:14:26 +00:00
Daniel James
763e59741a Add the hash documentation.
[SVN r28135]
2005-04-11 22:07:45 +00:00
Daniel James
8b08528611 Better version of the built in array hash function.
[SVN r28089]
2005-04-10 20:07:50 +00:00
Daniel James
18b3a53699 Remove the empty array hash function test.
[SVN r28088]
2005-04-10 19:21:38 +00:00
Daniel James
a267ab6a2c Drop the empty array test.
[SVN r28087]
2005-04-10 19:19:59 +00:00
Daniel James
477004a45d Add the unit tests for hashing built in arrays.
[SVN r28079]
2005-04-10 12:38:58 +00:00
Daniel James
15d97d95e7 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
1d10a0f323 Use static assert instead of mpl assert in the hash tests, as it's more
portable.


[SVN r28068]
2005-04-09 09:30:27 +00:00
Daniel James
5e9f0e4c8e Use the named variants of the float functions for stlport on gcc-2.95.
[SVN r28067]
2005-04-09 09:27:20 +00:00
Daniel James
896e07cca7 Implement the compile time checks for hash functions as a function instead of a templated class. Hopefully it will work on more compilers.
[SVN r28053]
2005-04-07 22:14:02 +00:00
Daniel James
e24a93d8c6 Change tests so they can be used to test implementations of TR1 (maybe, eventually).
[SVN r28052]
2005-04-07 21:57:22 +00:00
Daniel James
50e6bad2fd Remove the Boost.Range overloads of hash_range.
[SVN r28051]
2005-04-07 21:08:58 +00:00
Daniel James
d252ee760d Removes hash_range_test.cpp's dependency on Boost.Range, which isn't currently working on Borland.
[SVN r28050]
2005-04-07 21:07:14 +00:00
Daniel James
2d91127422 Removes uses of BOOST_CHECK_EQUAL from the hash tests as they don't work on Borland.
Also force a failure on the float tests on borland as they are crashing horribly. Hopefully I should be able to fix this and remove this.

Also use pair's constructor in hash_map_test.hpp instead of make_pair so that the correct type is created.


[SVN r28049]
2005-04-07 20:53:20 +00:00
Daniel James
a65dc47fcb Change the hash float config for Rogue Wave so that it only applies to Borland,
as it seems to be wrong on SunPro.


[SVN r28029]
2005-04-06 22:52:25 +00:00
Daniel James
3d0a7a34dd Fix a bug in the float hash test - checking that infinity & -infinity hash to
the same value. The hash function is actually working better on the compilers
that were failing this test.


[SVN r28028]
2005-04-06 22:27:45 +00:00
Daniel James
d305aad29d Fix the 'DEPENDS all' line in the hash test Jamfile.
[SVN r27956]
2005-04-04 16:54:22 +00:00
Daniel James
52750a193d Rename test suite to functional/hash
[SVN r27920]
2005-04-02 00:03:17 +00:00