GCC のバージョンに応じて別のファイルをインクルードしたいと考えています。より正確には、次のように書きたいと思います。
#if GCC_VERSION >= 4.2
# include <unordered_map>
# define EXT std
#elif GCC_VERSION >= 4
# include <tr1/unordered_map>
# define EXT std
#else
# include <ext/hash_map>
# define unordered_map __gnu_cxx::hash_map
# define EXT __gnu_cxx
#endif
3.2より前のgccは気にしません。
そのための前処理時に変数が定義されていると確信していますが、もう一度見つけることができません。