Commit Graph
56 Commits
Author SHA1 Message Date
Daniel James 509a1a8834 Merged revisions 43838-43894 via svnmerge from
https://svn.boost.org/svn/boost/branches/unordered/trunk

........
  r43840 | danieljames | 2008-03-24 17:25:07 +0000 (Mon, 24 Mar 2008) | 1 line
  
  Fix a g++ warning.
........
  r43844 | danieljames | 2008-03-24 17:56:28 +0000 (Mon, 24 Mar 2008) | 1 line
  
  It's a new-ish year.
........
  r43885 | danieljames | 2008-03-27 20:36:10 +0000 (Thu, 27 Mar 2008) | 1 line
  
  The release script doesn't need to copy images and css - because that's now done in the jamfiles. Also tweak the shell script a tad bit.
........
  r43890 | danieljames | 2008-03-27 23:01:40 +0000 (Thu, 27 Mar 2008) | 1 line
  
  Starting to add a docbook bibliography.
........
  r43894 | danieljames | 2008-03-27 23:24:18 +0000 (Thu, 27 Mar 2008) | 1 line
  
  Redeclare 'data' in iterator_base to help compilers which have trouble with accessing the nested typedef.
........


[SVN r43895]
2008-03-27 23:38:01 +00:00
Daniel James 1de2ad87bd Merge new changes to unordered & hash.
- Unordered tests can run lightweight test or Boost.Test (at least
   theoretically).
 - Workaround Open BSD's incorrect numeric_limits.
 - Move the hash extensions in their own file.
 - Various small improvements to the unordered docs.
 - Fix some unordered examples.

Merged revisions 43117-43837 via svnmerge from 
https://svn.boost.org/svn/boost/branches/unordered/trunk


[SVN r43838]
2008-03-24 17:03:15 +00:00
Daniel James 91145b5b0d Merged revisions 42882-42941 via svnmerge from
https://svn.boost.org/svn/boost/branches/unordered/trunk

................
  r42887 | danieljames | 2008-01-20 21:32:04 +0000 (Sun, 20 Jan 2008) | 10 lines
  
  Merged revisions 42590-42664,42667-42697,42699-42723,42725-42855,42857-42881 via svnmerge from 
  https://svn.boost.org/svn/boost/trunk
  
  ........
    r42881 | danieljames | 2008-01-20 17:37:21 +0000 (Sun, 20 Jan 2008) | 1 line
    
    Include <new> to get std::bad_alloc.
  ........
................
  r42892 | danieljames | 2008-01-21 13:03:16 +0000 (Mon, 21 Jan 2008) | 1 line
  
  On some compilers the Rogue Wave/Apache stdcxx library doesn't have the normal std::distance, but instead has a variant that takes the result as the third parameter so it doesn't have to work out the type from the iterator.
................
  r42893 | danieljames | 2008-01-21 13:07:58 +0000 (Mon, 21 Jan 2008) | 1 line
  
  Fix a typo in the last commit.
................
  r42895 | danieljames | 2008-01-21 13:33:29 +0000 (Mon, 21 Jan 2008) | 1 line
  
  Remove tabs from the last checkin.
................
  r42896 | danieljames | 2008-01-21 15:51:40 +0000 (Mon, 21 Jan 2008) | 1 line
  
  Use Boost config to tell when we have a std::distance function. Also, no need for a macro.
................
  r42908 | danieljames | 2008-01-21 21:37:04 +0000 (Mon, 21 Jan 2008) | 1 line
  
  Use boost::long_long_type and boost::ulong_long_type.
................
  r42921 | danieljames | 2008-01-23 11:43:35 +0000 (Wed, 23 Jan 2008) | 1 line
  
  Remove some tabs.
................
  r42922 | danieljames | 2008-01-23 11:46:28 +0000 (Wed, 23 Jan 2008) | 2 lines
  
  Add missing include. Refs #1596
................
  r42923 | danieljames | 2008-01-23 11:52:47 +0000 (Wed, 23 Jan 2008) | 2 lines
  
  Always use void const* for the second parameter of allocate. Refs #1596.
................
  r42936 | danieljames | 2008-01-23 22:22:16 +0000 (Wed, 23 Jan 2008) | 1 line
  
  Use Boost style library name in the documentation.
................
  r42937 | danieljames | 2008-01-23 22:22:32 +0000 (Wed, 23 Jan 2008) | 1 line
  
  More tabs.
................
  r42941 | danieljames | 2008-01-23 23:35:01 +0000 (Wed, 23 Jan 2008) | 1 line
  
  Fix all the allocators.
................


[SVN r42943]
2008-01-23 23:39:59 +00:00
Daniel James 0a74f461f0 Try to only issue deprecation warnings on compilers that support them.
[SVN r40206]
2007-10-20 10:31:58 +00:00
Daniel James d0ad17a718 Fix the deprecated warnings on Borland, should also check before using #warning.
[SVN r40180]
2007-10-19 09:55:10 +00:00
Daniel James f1dfae8703 Sun C++ didn't like the function call, so just try inlining the implementation for now.
[SVN r40036]
2007-10-14 21:52:12 +00:00
Daniel James b869f1d775 Use a pragma for warnings in Visual C++.
[SVN r39991]
2007-10-13 21:50:05 +00:00
Daniel James 2de9bfe88c Add support for complex numbers to Boost.Hash
[SVN r39983]
2007-10-13 18:34:25 +00:00
Daniel James d6a5c9c435 New attempt at fixing the function pointer hash on the Sun compilers.
I think I was barking up the wrong tree - it could be that when calling
hash_value with a function pointer the compiler was choosing the
hash_value(bool) overload over the hash_value(T*) overload, so instead I'm
trying to call the correct one by giving it a template parameter. Another
alternative would be to calculate the hash function inside boost::hash.

Unfortunately, if I'm right, this means that other calls to hash_value will go
wrong for function pointers.


[SVN r39972]
2007-10-13 16:34:09 +00:00
Daniel James cd2d453735 Fix my botched attempt at supporting function pointers on Sun's compilers.
Also, now only applies the workaround to function pointers, non-function
pointers are treated as before. I might need to apply the special case to
member function pointers as well.


[SVN r39960]
2007-10-12 11:58:34 +00:00
Daniel James 4f3f3237db Try to fix function pointer hashing for the sun compiler. A bit of a stab in
the dark.


[SVN r39935]
2007-10-11 17:12:24 +00:00
Daniel James fe5fa48972 Add proper support for long longs and unsigned long longs.
[SVN r39014]
2007-08-27 18:16:54 +00:00
Daniel James 93b80b365f Add extra overloads for hash_value to cover all the specializations of boost::hash. Fixes 1095
[SVN r38881]
2007-08-24 01:44:15 +00:00
Daniel James 5f90cf05d3 Update the copyright in the hash library.
[SVN r38876]
2007-08-24 01:05:36 +00:00
Daniel James ff43cf2784 Copy hash library from 1.34.1 over trunk.
For the first merge with the release branch, I only want to include some of the
changes I've been working on (fixes and some trivial changes), so I'm starting
again from 1.34.1.


[SVN r38873]
2007-08-24 00:42:19 +00:00
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
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
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 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 39b4e38367 The Digital Mars workarounds aren't required for the latest version.
[SVN r34510]
2006-07-12 10:13:45 +00:00
Daniel James 645cac6ae3 Update copyright details.
[SVN r34390]
2006-06-25 09:59:05 +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 7c9c2c3ff8 Workaround for Visual C++ 7.
[SVN r34191]
2006-06-06 08:14:23 +00:00
Daniel James 00975444e0 Hash workarounds for Digital Mars.
[SVN r33958]
2006-05-07 17:52:38 +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