--- dcpp/stdinc.h.orig +++ dcpp/stdinc.h @@ -123,7 +123,7 @@ #include #include -#if defined(_MSC_VER) || defined(_STLPORT_VERSION) +#if defined(_MSC_VER) || defined(_STLPORT_VERSION) || defined(_LIBCPP_VERSION) #include #include @@ -139,5 +139,8 @@ +#ifdef _LIBCPP_VERSION +namespace std { namespace tr1 { using namespace std; }} +#endif namespace dcpp { using namespace std; using namespace std::tr1; } --- dcpp/CID.h.orig 2011-04-17 21:57:09.000000000 +0400 +++ dcpp/CID.h 2013-09-13 00:50:16.544145469 +0400 @@ -57,7 +57,10 @@ } // namespace dcpp -namespace std { namespace tr1 { +namespace std { +#ifndef _LIBCPP_VERSION +namespace tr1 { +#endif template<> struct hash { size_t operator()(const dcpp::CID& rhs) const { @@ -65,6 +68,8 @@ } }; +#ifndef _LIBCPP_VERSION } +#endif } #endif // !defined(CID_H) --- dcpp/HashValue.h.orig 2011-04-17 21:57:09.000000000 +0400 +++ dcpp/HashValue.h 2013-09-13 00:48:18.173057104 +0400 @@ -46,12 +46,17 @@ } // namespace dcpp -namespace std { namespace tr1 { +namespace std { +#ifndef _LIBCPP_VERSION +namespace tr1 { +#endif template struct hash > { size_t operator()(const dcpp::HashValue& rhs) const { return *(size_t*)rhs.data; } }; +#ifndef _LIBCPP_VERSION } +#endif } #endif // !defined(HASH_VALUE_H)