diff options
author | Peter Collingbourne <pcc@google.com> | 2018-01-17 16:05:47 -0800 |
---|---|---|
committer | Peter Collingbourne <pcc@google.com> | 2018-01-17 16:05:49 -0800 |
commit | 3ba21cd5f724528ab8792c05bda6e06ceb557bff (patch) | |
tree | a36bcbf4c7eb77662b5ad6a36fda92442bc77e8b /src | |
parent | 47b7d2c7cadf74ceec90fc5042232819cd0dd557 (diff) | |
download | protobuf-3ba21cd5f724528ab8792c05bda6e06ceb557bff.tar.gz protobuf-3ba21cd5f724528ab8792c05bda6e06ceb557bff.tar.bz2 protobuf-3ba21cd5f724528ab8792c05bda6e06ceb557bff.zip |
Add support for libc++ on Windows.
This disables a couple of workarounds which are only necessary with
MSVC's standard library and cause problems with libc++.
Diffstat (limited to 'src')
-rw-r--r-- | src/google/protobuf/arena.h | 2 | ||||
-rw-r--r-- | src/google/protobuf/stubs/hash.h | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/google/protobuf/arena.h b/src/google/protobuf/arena.h index f3cdedac..b500b3be 100644 --- a/src/google/protobuf/arena.h +++ b/src/google/protobuf/arena.h @@ -40,7 +40,7 @@ #if LANG_CXX11 #include <google/protobuf/stubs/type_traits.h> #endif -#if defined(_MSC_VER) && !_HAS_EXCEPTIONS +#if defined(_MSC_VER) && !defined(_LIBCPP_STD_VER) && !_HAS_EXCEPTIONS // Work around bugs in MSVC <typeinfo> header when _HAS_EXCEPTIONS=0. #include <exception> #include <typeinfo> diff --git a/src/google/protobuf/stubs/hash.h b/src/google/protobuf/stubs/hash.h index 218cd948..ec1f9810 100644 --- a/src/google/protobuf/stubs/hash.h +++ b/src/google/protobuf/stubs/hash.h @@ -235,7 +235,8 @@ class hash_set : public std::set<Key, HashFcn> { HashFcn hash_function() const { return HashFcn(); } }; -#elif defined(_MSC_VER) && !defined(_STLPORT_VERSION) +#elif defined(_MSC_VER) && !defined(_STLPORT_VERSION) && \ + !(defined(_LIBCPP_STD_VER) && _LIBCPP_STD_VER >= 11) template <typename Key> struct hash : public GOOGLE_PROTOBUF_HASH_COMPARE<Key> { |