ext: Fix undefined macro in pybind

Change-Id: I63a2506d3c028f78cacce8308e2f0e4880531dec
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Andreas Hansson <andreas.hansson@arm.com>
Reviewed-by: Curtis Dunham <curtis.dunham@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/2230
Reviewed-by: Tony Gutierrez <anthony.gutierrez@amd.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-by: Pierre-Yves Péneau <pierre-yves.peneau@lirmm.fr>
This commit is contained in:
Andreas Sandberg
2017-02-27 13:17:51 +00:00
parent c79706ff4c
commit ba42457254
2 changed files with 4 additions and 3 deletions

View File

@@ -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)

View File

@@ -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>> {};