forked from OSchip/llvm-project
Define the pointer hash struct before the string one, to improve compatibility
with ICC. Patch contributed by Bjørn Wennberg. llvm-svn: 18663
This commit is contained in:
parent
6430772035
commit
3e4445cd03
llvm/include/llvm/ADT
|
@ -23,12 +23,6 @@
|
|||
// Cannot specialize hash template from outside of the std namespace.
|
||||
namespace HASH_NAMESPACE {
|
||||
|
||||
template <> struct hash<std::string> {
|
||||
size_t operator()(std::string const &str) const {
|
||||
return hash<char const *>()(str.c_str());
|
||||
}
|
||||
};
|
||||
|
||||
// Provide a hash function for arbitrary pointers...
|
||||
template <class T> struct hash<T *> {
|
||||
inline size_t operator()(const T *Val) const {
|
||||
|
@ -36,6 +30,12 @@ template <class T> struct hash<T *> {
|
|||
}
|
||||
};
|
||||
|
||||
template <> struct hash<std::string> {
|
||||
size_t operator()(std::string const &str) const {
|
||||
return hash<char const *>()(str.c_str());
|
||||
}
|
||||
};
|
||||
|
||||
} // End namespace std
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue