Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r63810 - in trunk: boost/functional/hash libs/functional/hash/doc
From: daniel_james_at_[hidden]
Date: 2010-07-10 09:47:48


Author: danieljames
Date: 2010-07-10 09:47:47 EDT (Sat, 10 Jul 2010)
New Revision: 63810
URL: http://svn.boost.org/trac/boost/changeset/63810

Log:
Release notes for hash.
Text files modified:
   trunk/boost/functional/hash/hash.hpp | 4 ++++
   trunk/libs/functional/hash/doc/changes.qbk | 8 ++++++++
   2 files changed, 12 insertions(+), 0 deletions(-)

Modified: trunk/boost/functional/hash/hash.hpp
==============================================================================
--- trunk/boost/functional/hash/hash.hpp (original)
+++ trunk/boost/functional/hash/hash.hpp 2010-07-10 09:47:47 EDT (Sat, 10 Jul 2010)
@@ -30,6 +30,8 @@
 
 namespace boost
 {
+#if !defined(BOOST_HASH_ALLOW_IMPLICIT_CASTS)
+
     // If you get a static assertion here, it's because hash_value
     // isn't declared for your type.
     template <typename T>
@@ -38,6 +40,8 @@
         return 0;
     }
 
+#endif
+
     std::size_t hash_value(bool);
     std::size_t hash_value(char);
     std::size_t hash_value(unsigned char);

Modified: trunk/libs/functional/hash/doc/changes.qbk
==============================================================================
--- trunk/libs/functional/hash/doc/changes.qbk (original)
+++ trunk/libs/functional/hash/doc/changes.qbk 2010-07-10 09:47:47 EDT (Sat, 10 Jul 2010)
@@ -106,4 +106,12 @@
   Avoid hashing 0.5 and 0 to the same number.
 * Stop using deprecated `BOOST_HAS_*` macros.
 
+[h2 Boost 1.44.0]
+
+* Prevent implicit conversions when calling `hash_value`. If you find
+ that the new version breaks your code, you can enable the old
+ behaviour by defining `BOOST_HASH_ALLOW_IMPLICIT_CASTS` - although
+ I would recommend that you update your code to work with the new
+ version.
+
 [endsect]


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk