summaryrefslogtreecommitdiff
path: root/include/hash_map.h
diff options
context:
space:
mode:
authorAttila Molnar <attilamolnar@hush.com>2013-01-28 13:57:10 -0800
committerAttila Molnar <attilamolnar@hush.com>2013-01-28 13:57:10 -0800
commit0cca0dbb8af9d9207ee99cb3e4762ee2acd1866e (patch)
tree20a538b2d41643f0bad0f771a46a0a25bbccf79f /include/hash_map.h
parent2239d91ca7cfeadf18e1332b38d10434e344838f (diff)
parent2e04480f21298262daa5c6d9b0d1b24c52f00756 (diff)
Merge pull request #414 from SaberUK/insp20+hashmap
[2.0] Use the preprocessor to detect whether hash_map is available.
Diffstat (limited to 'include/hash_map.h')
-rw-r--r--include/hash_map.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/include/hash_map.h b/include/hash_map.h
index 6be2da6ca..1b43f0118 100644
--- a/include/hash_map.h
+++ b/include/hash_map.h
@@ -22,17 +22,19 @@
#ifndef INSPIRCD_HASHMAP_H
#define INSPIRCD_HASHMAP_H
-
-#include "inspircd_config.h"
-
+
/** Where hash_map is varies from compiler to compiler
* as it is not standard unless we have tr1.
+ *
+ * TODO: in 2.2 if we drop support for libstdc++ older than 3.4.7 and GCC older
+ * than 4.1 this can be cleaned up massively.
*/
#ifndef _WIN32
- #ifdef HASHMAP_DEPRECATED
+ #if __GLIBCXX__ > 20060309
// GCC4+ has deprecated hash_map and uses tr1. But of course, uses a different include to MSVC. FOR FUCKS SAKE.
#include <tr1/unordered_map>
#define HAS_TR1_UNORDERED
+ #define HASHMAP_DEPRECATED
#else
#include <ext/hash_map>
/** Oddball linux namespace for hash_map */