forked from boostorg/intrusive
gcc 4.3 fixes for normal and -std=c++0x modes
[SVN r46573]
This commit is contained in:
@@ -27,7 +27,7 @@ using namespace boost::intrusive;
|
||||
|
||||
static const std::size_t BucketSize = 11;
|
||||
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
struct test_unordered_multiset
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
@@ -41,8 +41,8 @@ struct test_unordered_multiset
|
||||
static void test_clone(std::vector<value_type>& values);
|
||||
};
|
||||
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>::test_all (std::vector<typename ValueTraits::value_type>& values)
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>::test_all (std::vector<typename ValueTraits::value_type>& values)
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
typedef unordered_multiset
|
||||
@@ -50,6 +50,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_all (std::vector<typ
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
{
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
@@ -77,8 +78,8 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_all (std::vector<typ
|
||||
}
|
||||
|
||||
//test case due to an error in tree implementation:
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>::test_impl()
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>::test_impl()
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
typedef unordered_multiset
|
||||
@@ -86,6 +87,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_impl()
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
|
||||
@@ -108,8 +110,8 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_impl()
|
||||
}
|
||||
|
||||
//test: constructor, iterator, clear, reverse_iterator, front, back, size:
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>::test_sort(std::vector<typename ValueTraits::value_type>& values)
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>::test_sort(std::vector<typename ValueTraits::value_type>& values)
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
typedef unordered_multiset
|
||||
@@ -117,6 +119,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_sort(std::vector<typ
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
|
||||
@@ -130,8 +133,8 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_sort(std::vector<typ
|
||||
}
|
||||
|
||||
//test: insert, const_iterator, const_reverse_iterator, erase, iterator_to:
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>::test_insert(std::vector<typename ValueTraits::value_type>& values)
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>::test_insert(std::vector<typename ValueTraits::value_type>& values)
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
typedef unordered_multiset
|
||||
@@ -139,6 +142,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_insert(std::vector<t
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
typedef typename unordered_multiset_type::iterator iterator;
|
||||
@@ -269,8 +273,8 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_insert(std::vector<t
|
||||
}
|
||||
|
||||
//test: insert (seq-version), swap, erase (seq-version), size:
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>::test_swap(std::vector<typename ValueTraits::value_type>& values)
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>::test_swap(std::vector<typename ValueTraits::value_type>& values)
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
typedef unordered_multiset
|
||||
@@ -278,6 +282,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_swap(std::vector<typ
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
typename unordered_multiset_type::bucket_type buckets [BucketSize];
|
||||
@@ -302,8 +307,8 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_swap(std::vector<typ
|
||||
}
|
||||
|
||||
//test: rehash:
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>::test_rehash(std::vector<typename ValueTraits::value_type>& values)
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>::test_rehash(std::vector<typename ValueTraits::value_type>& values)
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
typedef unordered_multiset
|
||||
@@ -311,6 +316,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_rehash(std::vector<t
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
|
||||
@@ -347,8 +353,8 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_rehash(std::vector<t
|
||||
}
|
||||
|
||||
//test: find, equal_range (lower_bound, upper_bound):
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>::test_find(std::vector<typename ValueTraits::value_type>& values)
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>::test_find(std::vector<typename ValueTraits::value_type>& values)
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
typedef unordered_multiset
|
||||
@@ -356,6 +362,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_find(std::vector<typ
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
|
||||
@@ -380,8 +387,8 @@ void test_unordered_multiset<ValueTraits, CacheBegin>::test_find(std::vector<typ
|
||||
}
|
||||
|
||||
|
||||
template<class ValueTraits, bool CacheBegin>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin>
|
||||
template<class ValueTraits, bool CacheBegin, bool CompareHash>
|
||||
void test_unordered_multiset<ValueTraits, CacheBegin, CompareHash>
|
||||
::test_clone(std::vector<typename ValueTraits::value_type>& values)
|
||||
{
|
||||
typedef typename ValueTraits::value_type value_type;
|
||||
@@ -390,6 +397,7 @@ void test_unordered_multiset<ValueTraits, CacheBegin>
|
||||
, value_traits<ValueTraits>
|
||||
, constant_time_size<value_type::constant_time_size>
|
||||
, cache_begin<CacheBegin>
|
||||
, compare_hash<CompareHash>
|
||||
> unordered_multiset_type;
|
||||
typedef typename unordered_multiset_type::bucket_traits bucket_traits;
|
||||
{
|
||||
@@ -462,6 +470,7 @@ class test_main_template
|
||||
, typename value_type::unordered_set_base_hook_t
|
||||
>::type
|
||||
, true
|
||||
, false
|
||||
>::test_all(data);
|
||||
|
||||
test_unordered_multiset < typename detail::get_member_value_traits
|
||||
@@ -472,6 +481,7 @@ class test_main_template
|
||||
>
|
||||
>::type
|
||||
, false
|
||||
, false
|
||||
>::test_all(data);
|
||||
|
||||
return 0;
|
||||
@@ -495,6 +505,7 @@ class test_main_template<VoidPointer, false>
|
||||
, typename value_type::unordered_set_base_hook_t
|
||||
>::type
|
||||
, true
|
||||
, false
|
||||
>::test_all(data);
|
||||
|
||||
test_unordered_multiset < typename detail::get_member_value_traits
|
||||
@@ -505,6 +516,7 @@ class test_main_template<VoidPointer, false>
|
||||
>
|
||||
>::type
|
||||
, false
|
||||
, false
|
||||
>::test_all(data);
|
||||
|
||||
test_unordered_multiset < typename detail::get_base_value_traits
|
||||
@@ -512,6 +524,7 @@ class test_main_template<VoidPointer, false>
|
||||
, typename value_type::unordered_set_auto_base_hook_t
|
||||
>::type
|
||||
, true
|
||||
, true
|
||||
>::test_all(data);
|
||||
|
||||
test_unordered_multiset < typename detail::get_member_value_traits
|
||||
@@ -522,6 +535,7 @@ class test_main_template<VoidPointer, false>
|
||||
>
|
||||
>::type
|
||||
, false
|
||||
, true
|
||||
>::test_all(data);
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user