Boost logo

Boost-Commit :

From: daniel_james_at_[hidden]
Date: 2008-07-03 10:34:57


Author: danieljames
Date: 2008-07-03 10:34:56 EDT (Thu, 03 Jul 2008)
New Revision: 47040
URL: http://svn.boost.org/trac/boost/changeset/47040

Log:
Workaround for some template syntax not supported in old versions of Visual C++ 6.5
Text files modified:
   trunk/boost/unordered_map.hpp | 12 ++++++++++++
   trunk/boost/unordered_set.hpp | 12 ++++++++++++
   2 files changed, 24 insertions(+), 0 deletions(-)

Modified: trunk/boost/unordered_map.hpp
==============================================================================
--- trunk/boost/unordered_map.hpp (original)
+++ trunk/boost/unordered_map.hpp 2008-07-03 10:34:56 EDT (Thu, 03 Jul 2008)
@@ -422,9 +422,15 @@
             base.rehash(n);
         }
         
+#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
+ friend bool operator==(unordered_map const&, unordered_map const&);
+ friend bool operator!=(unordered_map const&, unordered_map const&);
+ friend std::size_t hash_value(unordered_map const&);
+#else
         friend bool operator==<>(unordered_map const&, unordered_map const&);
         friend bool operator!=<>(unordered_map const&, unordered_map const&);
         friend std::size_t hash_value<>(unordered_map const&);
+#endif
     }; // class template unordered_map
 
     template <class K, class T, class H, class P, class A>
@@ -796,9 +802,15 @@
             base.rehash(n);
         }
 
+#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
+ friend bool operator==(unordered_multimap const&, unordered_multimap const&);
+ friend bool operator!=(unordered_multimap const&, unordered_multimap const&);
+ friend std::size_t hash_value(unordered_multimap const&);
+#else
         friend bool operator==<>(unordered_multimap const&, unordered_multimap const&);
         friend bool operator!=<>(unordered_multimap const&, unordered_multimap const&);
         friend std::size_t hash_value<>(unordered_multimap const&);
+#endif
     }; // class template unordered_multimap
 
     template <class K, class T, class H, class P, class A>

Modified: trunk/boost/unordered_set.hpp
==============================================================================
--- trunk/boost/unordered_set.hpp (original)
+++ trunk/boost/unordered_set.hpp 2008-07-03 10:34:56 EDT (Thu, 03 Jul 2008)
@@ -392,9 +392,15 @@
             base.rehash(n);
         }
 
+#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
+ friend bool operator==(unordered_set const&, unordered_set const&);
+ friend bool operator!=(unordered_set const&, unordered_set const&);
+ friend std::size_t hash_value(unordered_set const&);
+#else
         friend bool operator==<>(unordered_set const&, unordered_set const&);
         friend bool operator!=<>(unordered_set const&, unordered_set const&);
         friend std::size_t hash_value<>(unordered_set const&);
+#endif
     }; // class template unordered_set
 
     template <class T, class H, class P, class A>
@@ -752,9 +758,15 @@
             base.rehash(n);
         }
 
+#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
+ friend bool operator==(unordered_multiset const&, unordered_multiset const&);
+ friend bool operator!=(unordered_multiset const&, unordered_multiset const&);
+ friend std::size_t hash_value(unordered_multiset const&);
+#else
         friend bool operator==<>(unordered_multiset const&, unordered_multiset const&);
         friend bool operator!=<>(unordered_multiset const&, unordered_multiset const&);
         friend std::size_t hash_value<>(unordered_multiset const&);
+#endif
     }; // class template unordered_multiset
 
     template <class T, class H, class P, class A>


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