set2 unit test: fixed GCC incompatibility
authorkhizmax <khizmax@gmail.com>
Mon, 6 Apr 2015 16:56:19 +0000 (19:56 +0300)
committerkhizmax <khizmax@gmail.com>
Mon, 6 Apr 2015 16:56:19 +0000 (19:56 +0300)
tests/unit/set2/set_type_cuckoo.h
tests/unit/set2/set_type_ellen_bintree.h
tests/unit/set2/set_type_michael.h
tests/unit/set2/set_type_skip_list.h
tests/unit/set2/set_type_split_list.h
tests/unit/set2/set_type_std.h
tests/unit/set2/set_type_striped.h

index bd868bd2f1cfaaf57ecc1e5d6c8d40031daa589b..3245de906087dedeca4b3a834f837f92672acdb3 100644 (file)
@@ -33,11 +33,12 @@ namespace set2 {
     struct set_type< cds::intrusive::cuckoo::implementation_tag, Key, Val >: public set_type_base< Key, Val >
     {
         typedef set_type_base< Key, Val > base_class;
-        using base_class::key_val;
-        using base_class::compare;
-        using base_class::less;
-        using base_class::hash;
-        using base_class::hash2;
+        typedef typename base_class::key_val key_val;
+        typedef typename base_class::compare compare;
+        typedef typename base_class::equal_to equal_to;
+        typedef typename base_class::less less;
+        typedef typename base_class::hash hash;
+        typedef typename base_class::hash2 hash2;
 
         // ***************************************************************************
         // CuckooSet
index 2a5b173251a46fa3825aa37c2d8e271d31b604fc..23cee38792ad0ae64c0c7c935db186afa0ee6b43 100644 (file)
@@ -17,10 +17,11 @@ namespace set2 {
     struct set_type< cc::ellen_bintree::implementation_tag, Key, Val >: public set_type_base< Key, Val >
     {
         typedef set_type_base< Key, Val > base_class;
-        using base_class::key_val;
-        using base_class::compare;
-        using base_class::less;
-        using base_class::hash;
+        typedef typename base_class::key_type key_type;
+        typedef typename base_class::key_val key_val;
+        typedef typename base_class::compare compare;
+        typedef typename base_class::less less;
+        typedef typename base_class::key_less key_less;
 
         struct ellen_bintree_props {
             struct key_extractor {
index 4d66236cd4b647fcc94afb112f431687b7a7e8ea..2df4f2c6553d4d084cf6ddbd0783329c808dc143 100644 (file)
@@ -17,10 +17,10 @@ namespace set2 {
     struct set_type< cc::michael_set::implementation_tag, Key, Val >: public set_type_base< Key, Val >
     {
         typedef set_type_base< Key, Val > base_class;
-        using base_class::key_val;
-        using base_class::compare;
-        using base_class::less;
-        using base_class::hash;
+        typedef typename base_class::key_val key_val;
+        typedef typename base_class::compare compare;
+        typedef typename base_class::less less;
+        typedef typename base_class::hash hash;
 
         // ***************************************************************************
         // MichaelHashSet based on MichaelList
index 27e310381fbc3af66d5e7ed41e4364a52cb81d64..30873cf9e788397adcbda6224596b551c44708e1 100644 (file)
@@ -17,10 +17,10 @@ namespace set2 {
     struct set_type< cc::skip_list::implementation_tag, Key, Val >: public set_type_base< Key, Val >
     {
         typedef set_type_base< Key, Val > base_class;
-        using base_class::key_val;
-        using base_class::compare;
-        using base_class::less;
-        using base_class::hash;
+        typedef typename base_class::key_val key_val;
+        typedef typename base_class::compare compare;
+        typedef typename base_class::less less;
+        typedef typename base_class::hash hash;
 
         class traits_SkipListSet_less_pascal: public cc::skip_list::make_traits <
                 co::less< less >
index dfbbc12f25f73a77f5351985892d7ef420b19a68..13b9e39761c19fe8673cd6e79ad0907f75a3e4c3 100644 (file)
@@ -23,10 +23,10 @@ namespace set2 {
     struct set_type< cc::split_list::implementation_tag, Key, Val >: public set_type_base< Key, Val >
     {
         typedef set_type_base< Key, Val > base_class;
-        using base_class::key_val;
-        using base_class::compare;
-        using base_class::less;
-        using base_class::hash;
+        typedef typename base_class::key_val key_val;
+        typedef typename base_class::compare compare;
+        typedef typename base_class::less less;
+        typedef typename base_class::hash hash;
 
         // ***************************************************************************
         // SplitListSet based on MichaelList
index fd441be02892c88b6a6fa4c21208ca919f66acaf..047381819da3d0c1c617f9afa643de811957ebff 100644 (file)
@@ -189,10 +189,10 @@ namespace set2 {
     struct set_type< std_implementation_tag, Key, Val >: public set_type_base< Key, Val >
     {
         typedef set_type_base< Key, Val > base_class;
-        using base_class::key_val;
-        using base_class::compare;
-        using base_class::less;
-        using base_class::hash;
+        typedef typename base_class::key_val key_val;
+        typedef typename base_class::less less;
+        typedef typename base_class::hash hash;
+        typedef typename base_class::equal_to equal_to;
 
         typedef StdSet< key_val, less, cds::sync::spin > StdSet_Spin;
         typedef StdSet< key_val, less, lock::NoLock>     StdSet_NoLock;
index 38076038ed4ee2b80f1f7d8614f089b056c63bc3..1d3332b14be652bc13396d57bb9e0bba926bf38c 100644 (file)
@@ -28,10 +28,12 @@ namespace set2 {
     struct set_type< cc::striped_set::implementation_tag, Key, Val >: public set_type_base< Key, Val >
     {
         typedef set_type_base< Key, Val > base_class;
-        using base_class::key_val;
-        using base_class::compare;
-        using base_class::less;
-        using base_class::hash;
+        typedef typename base_class::key_val key_val;
+        typedef typename base_class::compare compare;
+        typedef typename base_class::less less;
+        typedef typename base_class::equal_to equal_to;
+        typedef typename base_class::hash hash;
+        typedef typename base_class::hash2 hash2;
 
 
         // ***************************************************************************