src/internet-stack/sgi-hashmap.h
author Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
Mon, 09 Jun 2008 15:40:22 -0700
changeset 3260 8c0ab08144e6
parent 524 src/internet-node/sgi-hashmap.h@082ffdd8fbd7
child 3365 6409d2460601
permissions -rw-r--r--
bug 186: internet-node directory must be renamed to internet-stack

/* This code snippet was ripped out of the gcc 
 * documentation and slightly modified to work
 * with gcc 4.x
 */
#ifndef SGI_HASHMAP_H
#define SGI_HASHMAP_H

/* 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
       #include <ext/hash_map>
       namespace sgi = ::__gnu_cxx;
     #endif
  #endif
#else      // ...  there are other compilers, right?
namespace sgi = std;
#endif


#endif /* SGI_HASHMAP_H */