1
0
Fork 0
mirror of https://git.freebsd.org/ports.git synced 2025-07-08 04:49:17 -04:00
ports/math/cadabra2/files/patch-pybind11-libc++7
Jan Beich d6707e9923 math/cadabra2: unbreak with libc++ 7
In file included from core/PythonCdb.cc:25:
In file included from libs/pybind11/include/pybind11/stl.h:34:
/usr/include/c++/v1/experimental/optional:11:2: error: "<experimental/optional> has been removed. Use <optional> instead."

PR:		230355
Obtained from:	upstream (pybind11)
2018-08-08 12:32:03 +00:00

26 lines
1.1 KiB
Text

https://github.com/pybind/pybind11/commit/ff6bd092d482b0c4e51aeb7367c3e5ecbc18a9de
--- libs/pybind11/include/pybind11/cast.h.orig 2018-03-30 09:33:27 UTC
+++ libs/pybind11/include/pybind11/cast.h
@@ -1685,6 +1685,9 @@ template <> inline void cast_safe<void>(object &&) {}
NAMESPACE_END(detail)
+template <return_value_policy policy = return_value_policy::automatic_reference>
+tuple make_tuple() { return tuple(0); }
+
template <return_value_policy policy = return_value_policy::automatic_reference,
typename... Args> tuple make_tuple(Args&&... args_) {
constexpr size_t size = sizeof...(Args);
--- libs/pybind11/include/pybind11/stl.h.orig 2018-03-30 09:33:27 UTC
+++ libs/pybind11/include/pybind11/stl.h
@@ -30,7 +30,8 @@
# define PYBIND11_HAS_OPTIONAL 1
# endif
// std::experimental::optional (but not allowed in c++11 mode)
-# if defined(PYBIND11_CPP14) && __has_include(<experimental/optional>)
+# if defined(PYBIND11_CPP14) && (__has_include(<experimental/optional>) && \
+ !__has_include(<optional>))
# include <experimental/optional>
# define PYBIND11_HAS_EXP_OPTIONAL 1
# endif