--- a/src/network/utils/sgi-hashmap.h Sun Mar 01 12:08:36 2015 +0100
+++ b/src/network/utils/sgi-hashmap.h Thu Mar 05 15:50:18 2015 +0100
@@ -8,28 +8,34 @@
/* To use gcc extensions.
*/
#ifdef __GNUC__
- #if __GNUC__ < 3
- #include <hash_map.h>
-namespace sgi { using ::hash_map; }; // inherit globals
- #else
- #if __GNUC__ < 4
- #include <ext/hash_map>
- #if __GNUC_MINOR__ == 0
-namespace sgi = std; // GCC 3.0
- #else
-namespace sgi = ::__gnu_cxx; // GCC 3.1 and later
- #endif
- #else // gcc 4.x and later
- #if __GNUC_MINOR__ < 3
- #ifdef __clang__
+ #if __GNUC__ < 3 // GCC 2.x
+ #include <hash_map.h>
+ namespace sgi { using ::hash_map; }; // inherit globals
+ #else
+ #if __GNUC__ < 4 // GCC 3.x
+ #include <ext/hash_map>
+ #if __GNUC_MINOR__ == 0
+ namespace sgi = std; // GCC 3.0
+ #else
+ namespace sgi = ::__gnu_cxx; // GCC 3.1 and later
+ #endif
+ #else
+ #if __GNUC__ < 5 // GCC 4.x
+ #if __GNUC_MINOR__ < 3 // GCC 4.0, 4.1 and 4.2
+ #ifdef __clang__ // Clang identifies as GCC 4.2
+ #undef __DEPRECATED
+ #endif
+ #include <ext/hash_map>
+ namespace sgi = ::__gnu_cxx;
+ #else
#undef __DEPRECATED
+ #include <backward/hash_map>
+ namespace sgi = ::__gnu_cxx;
#endif
- #include <ext/hash_map>
-namespace sgi = ::__gnu_cxx;
- #else
-#undef __DEPRECATED
- #include <backward/hash_map>
-namespace sgi = ::__gnu_cxx;
+ #else // GCC 5.x
+ #undef __DEPRECATED
+ #include <backward/hash_map>
+ namespace sgi = ::__gnu_cxx;
#endif
#endif
#endif