16 #ifndef STXXL_COMPAT_HASH_MAP_HEADER
17 #define STXXL_COMPAT_HASH_MAP_HEADER
22 #if defined(__GXX_EXPERIMENTAL_CXX0X__)
23 #include <unordered_map>
26 #elif defined(__GNUG__) && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40200) && \
27 (!defined(__ICC) || (__ICC > 1110))
28 #include <tr1/unordered_map>
30 #include <ext/hash_map>
37 #if defined(__GXX_EXPERIMENTAL_CXX0X__)
38 typedef std::hash<_Tp>
result;
40 typedef stdext::hash_compare<_Tp>
result;
41 #elif defined(__GNUG__) && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40200) && \
42 (!defined(__ICC) || (__ICC > 1110))
43 typedef std::tr1::hash<_Tp>
result;
49 template <class _Key, class _Tp, class _Hash = typename compat_hash<_Key>::result>
51 #if defined(__GXX_EXPERIMENTAL_CXX0X__)
52 typedef std::unordered_map<_Key, _Tp, _Hash>
result;
54 typedef stdext::hash_map<_Key, _Tp, _Hash>
result;
55 #elif defined(__GNUG__) && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40200) && \
56 (!defined(__ICC) || (__ICC > 1110))
57 typedef std::tr1::unordered_map<_Key, _Tp, _Hash>
result;
59 typedef __gnu_cxx::hash_map<_Key, _Tp, _Hash>
result;
65 #endif // !STXXL_COMPAT_HASH_MAP_HEADER
#define STXXL_BEGIN_NAMESPACE
__gnu_cxx::hash< _Tp > result
__gnu_cxx::hash_map< _Key, _Tp, _Hash > result
#define STXXL_END_NAMESPACE