mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-05 14:34:55 +00:00
hash_map and hash_set:
* Define HASH_NAMESPACE to `std' in the case of pre-3.0 GCC compilers * Add comments to clarify the intent of all the #ifdef madness * Add VIM directive to highlight files as C++ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7903 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b7dc2b9251
commit
b60fe7791e
@ -1,4 +1,5 @@
|
|||||||
//===-- Support/hash_map - "Portable" wrapper around hash_map ---*- C++ -*-===//
|
//===-- Support/hash_map - "Portable" wrapper around hash_map ---*- C++ -*-===//
|
||||||
|
// vim:ft=cpp
|
||||||
//
|
//
|
||||||
// This file provides a wrapper around the mysterious <hash_map> header file
|
// This file provides a wrapper around the mysterious <hash_map> header file
|
||||||
// that seems to move around between GCC releases into and out of namespaces at
|
// that seems to move around between GCC releases into and out of namespaces at
|
||||||
@ -21,19 +22,22 @@
|
|||||||
#include "Config/config.h"
|
#include "Config/config.h"
|
||||||
|
|
||||||
#ifdef HAVE_GNU_EXT_HASH_MAP
|
#ifdef HAVE_GNU_EXT_HASH_MAP
|
||||||
|
// This is for GCC-3.1+ which puts hash in ext/hash_map
|
||||||
#include <ext/hash_map>
|
#include <ext/hash_map>
|
||||||
#define HASH_NAMESPACE __gnu_cxx
|
#define HASH_NAMESPACE __gnu_cxx
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
// This is for GCC-3.0.x which puts hashmap in the `ext' directory.
|
||||||
#ifdef HAVE_STD_EXT_HASH_MAP
|
#ifdef HAVE_STD_EXT_HASH_MAP
|
||||||
#include <ext/hash_map>
|
#include <ext/hash_map>
|
||||||
#define HASH_NAMESPACE std
|
#define HASH_NAMESPACE std
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
// This handles older, pre-3.0 GCC which do not have the extentions in the `ext'
|
||||||
|
// directory, and ignore the `std' namespace.
|
||||||
#include <hash_map>
|
#include <hash_map>
|
||||||
#define HASH_NAMESPACE
|
#define HASH_NAMESPACE std
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
//===-- Support/hash_set - "Portable" wrapper around hash_set ---*- C++ -*-===//
|
//===-- Support/hash_set - "Portable" wrapper around hash_set ---*- C++ -*-===//
|
||||||
|
// vim:ft=cpp
|
||||||
//
|
//
|
||||||
// This file provides a wrapper around the mysterious <hash_set> header file
|
// This file provides a wrapper around the mysterious <hash_set> header file
|
||||||
// that seems to move around between GCC releases into and out of namespaces at
|
// that seems to move around between GCC releases into and out of namespaces at
|
||||||
@ -22,18 +23,22 @@
|
|||||||
|
|
||||||
#ifdef HAVE_GNU_EXT_HASH_SET
|
#ifdef HAVE_GNU_EXT_HASH_SET
|
||||||
|
|
||||||
|
// This is for GCC-3.1+ which puts hashset in ext/hash_set
|
||||||
#include <ext/hash_set>
|
#include <ext/hash_set>
|
||||||
#define HASH_NAMESPACE __gnu_cxx
|
#define HASH_NAMESPACE __gnu_cxx
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
// This is for GCC-3.0.x which puts hashmap in the `ext' directory.
|
||||||
#ifdef HAVE_STD_EXT_HASH_SET
|
#ifdef HAVE_STD_EXT_HASH_SET
|
||||||
#include <ext/hash_set>
|
#include <ext/hash_set>
|
||||||
#define HASH_NAMESPACE std
|
#define HASH_NAMESPACE std
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
// This handles older, pre-3.0 GCC which do not have the extentions in the `ext'
|
||||||
|
// directory, and ignore the `std' namespace.
|
||||||
#include <hash_set>
|
#include <hash_set>
|
||||||
#define HASH_NAMESPACE
|
#define HASH_NAMESPACE std
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -48,4 +53,3 @@ using HASH_NAMESPACE::hash;
|
|||||||
#include <Support/HashExtras.h>
|
#include <Support/HashExtras.h>
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user