Workaround for some template syntax not supported in old versions of Visual C++ 6.5

[SVN r47040]
This commit is contained in:
Daniel James
2008-07-03 14:34:56 +00:00
parent ec1e809fc3
commit 3640e1e96c
2 changed files with 24 additions and 0 deletions

View File

@ -422,9 +422,15 @@ namespace boost
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 @@ namespace boost
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>

View File

@ -392,9 +392,15 @@ namespace boost
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 @@ namespace boost
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>