diff options
-rw-r--r-- | ext/pybind11/include/pybind11/common.h | 3 | ||||
-rw-r--r-- | ext/pybind11/include/pybind11/stl.h | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/ext/pybind11/include/pybind11/common.h b/ext/pybind11/include/pybind11/common.h index 712c1a5d6..f7a383007 100644 --- a/ext/pybind11/include/pybind11/common.h +++ b/ext/pybind11/include/pybind11/common.h @@ -558,7 +558,8 @@ PYBIND11_DECL_FMT(bool, "?"); struct nodelete { template <typename T> void operator()(T*) { } }; // overload_cast requires variable templates: C++14 or MSVC 2015 Update 2 -#if defined(PYBIND11_CPP14) || _MSC_FULL_VER >= 190023918 +#if defined(PYBIND11_CPP14) || ( \ + defined(_MSC_FULL_VER) &&_MSC_FULL_VER >= 190023918) #define PYBIND11_OVERLOAD_CAST 1 NAMESPACE_BEGIN(detail) diff --git a/ext/pybind11/include/pybind11/stl.h b/ext/pybind11/include/pybind11/stl.h index d4b0fc914..7d6e8b102 100644 --- a/ext/pybind11/include/pybind11/stl.h +++ b/ext/pybind11/include/pybind11/stl.h @@ -246,7 +246,7 @@ template<typename T> struct optional_caster { PYBIND11_TYPE_CASTER(T, _("Optional[") + value_conv::name() + _("]")); }; -#if PYBIND11_HAS_OPTIONAL +#ifdef PYBIND11_HAS_OPTIONAL template<typename T> struct type_caster<std::optional<T>> : public optional_caster<std::optional<T>> {}; @@ -254,7 +254,7 @@ template<> struct type_caster<std::nullopt_t> : public void_caster<std::nullopt_t> {}; #endif -#if PYBIND11_HAS_EXP_OPTIONAL +#ifdef PYBIND11_HAS_EXP_OPTIONAL template<typename T> struct type_caster<std::experimental::optional<T>> : public optional_caster<std::experimental::optional<T>> {}; |