Fix compilation with clang/libc++

The issue was that redeclaring the hash template in the code somehow seems to shadow the declaration that is done in <functional> and <memory> and afterwards the template specialization of the hash function seems to use our redefined template instead of libc++’s one (most likely due to the fact that libc++ uses an inline namespace inside std)
This commit is contained in:
Nicolas Wack 2014-01-19 19:30:42 +01:00
parent c72ed39acd
commit 271781f78c
6 changed files with 0 additions and 12 deletions

View file

@ -117,8 +117,6 @@ namespace fc {
#include <fc/crypto/city.hpp>
namespace std
{
template<typename T> struct hash;
template<typename T, size_t N>
struct hash<fc::array<T,N> >
{

View file

@ -79,8 +79,6 @@ class ripemd160
namespace std
{
template<typename T> struct hash;
template<>
struct hash<fc::ripemd160>
{

View file

@ -72,8 +72,6 @@ class sha1
namespace std
{
template<typename T> struct hash;
template<>
struct hash<fc::sha1>
{

View file

@ -73,8 +73,6 @@ class sha224
} // fc
namespace std
{
template<typename T> struct hash;
template<>
struct hash<fc::sha224>
{

View file

@ -112,8 +112,6 @@ namespace fc {
}
namespace std
{
template<typename T> struct hash;
template<>
struct hash<fc::ip::endpoint>
{

View file

@ -99,8 +99,6 @@ namespace fc
namespace std
{
template<typename T> struct hash;
template<>
struct hash<fc::uint128>
{