From 5c8eb86bcc79b4eb9c9a7eb2b145a7abd0d147ed Mon Sep 17 00:00:00 2001 From: Justin Carpentier <justin.carpentier@inria.fr> Date: Wed, 15 Jul 2020 20:10:36 +0200 Subject: [PATCH] core: fix argument according to the Numpy version --- include/eigenpy/ufunc.hpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/include/eigenpy/ufunc.hpp b/include/eigenpy/ufunc.hpp index eb2c049..2647f8c 100644 --- a/include/eigenpy/ufunc.hpp +++ b/include/eigenpy/ufunc.hpp @@ -12,9 +12,15 @@ namespace eigenpy namespace internal { +#ifdef NPY_1_19_API_VERSION + #define EIGENPY_NPY_CONST_UFUNC_ARG const +#else + #define EIGENPY_NPY_CONST_UFUNC_ARG +#endif + #define EIGENPY_REGISTER_BINARY_OPERATOR(name,op) \ template<typename T1, typename T2, typename R> \ - void binary_op_##name(char** args, const npy_intp * dimensions, const npy_intp * steps, void * /*data*/) \ + void binary_op_##name(char** args, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * dimensions, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * steps, void * /*data*/) \ { \ npy_intp is0 = steps[0], is1 = steps[1], \ os = steps[2], n = *dimensions; \ @@ -31,7 +37,7 @@ namespace eigenpy } \ \ template<typename T> \ - void binary_op_##name(char** args, const npy_intp * dimensions, const npy_intp * steps, void * data) \ + void binary_op_##name(char** args, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * dimensions, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * steps, void * data) \ { \ binary_op_##name<T,T,T>(args,dimensions,steps,data); \ } @@ -49,7 +55,7 @@ namespace eigenpy #define EIGENPY_REGISTER_UNARY_OPERATOR(name,op) \ template<typename T, typename R> \ - void unary_op_##name(char** args, const npy_intp * dimensions, const npy_intp * steps, void * /*data*/) \ + void unary_op_##name(char** args, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * dimensions, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * steps, void * /*data*/) \ { \ npy_intp is = steps[0], \ os = steps[1], n = *dimensions; \ @@ -65,7 +71,7 @@ namespace eigenpy } \ \ template<typename T> \ - void unary_op_##name(char** args, const npy_intp * dimensions, const npy_intp * steps, void * data) \ + void unary_op_##name(char** args, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * dimensions, EIGENPY_NPY_CONST_UFUNC_ARG npy_intp * steps, void * data) \ { \ unary_op_##name<T,T>(args,dimensions,steps,data); \ } -- GitLab