The GCC 3.x STL stores hash_map in a different place and
namespace than GCC 2.95. Even with this patch, there is a
problem with the explicit template instantiations (--disable-
library to ./configure gets around this for now).
The namespace is __gcc_cxx and the new location is <ext/
hash_map>
I made the following fix to address this issue.
#if __GNUC__
# include <ext/hash_map> // GCC 3.x
using __gnu_cxx::hash_map;
#else
# include <hash_map>
using std::hash_map;
#endif
Then change everything where "std::hash_map" is used to
just "hash_map".
Fixes STL problem in watershed.cpp