From 2d5d9888fb509d4b2fce19f34470d313d692d16b Mon Sep 17 00:00:00 2001 From: Rackoon <32634987+WildRackoon@users.noreply.github.com> Date: Thu, 19 Jan 2023 20:47:39 +0100 Subject: [PATCH] Fix misc warnings --- matplotlibcpp.h | 39 +++++++++++++++++++-------------------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/matplotlibcpp.h b/matplotlibcpp.h index d95d46a..761db04 100644 --- a/matplotlibcpp.h +++ b/matplotlibcpp.h @@ -21,16 +21,15 @@ # ifdef WITH_OPENCV # include -# endif // WITH_OPENCV - /* * A bunch of constants were removed in OpenCV 4 in favour of enum classes, so * define the ones we need here. */ -# if CV_MAJOR_VERSION > 3 -# define CV_BGR2RGB cv::COLOR_BGR2RGB -# define CV_BGRA2RGBA cv::COLOR_BGRA2RGBA -# endif +# if CV_MAJOR_VERSION > 3 +# define CV_BGR2RGB cv::COLOR_BGR2RGB +# define CV_BGRA2RGBA cv::COLOR_BGRA2RGBA +# endif +# endif // WITH_OPENCV #endif // WITHOUT_NUMPY #if PY_MAJOR_VERSION >= 3 @@ -328,7 +327,7 @@ inline bool annotate(std::string annotation, double x, double y) if(res) Py_DECREF(res); - return res; + return bool(res); } namespace detail { @@ -358,7 +357,7 @@ template <> struct select_npy_type { const static NPY_TYPES template PyObject* get_array(const std::vector& v) { - npy_intp vsize = v.size(); + npy_intp vsize = static_cast(v.size()); NPY_TYPES type = select_npy_type::type; if (type == NPY_NOTYPE) { size_t memsize = v.size()*sizeof(double); @@ -415,9 +414,9 @@ PyObject* get_array(const std::vector& v) // sometimes, for labels and such, we need string arrays inline PyObject * get_array(const std::vector& strings) { - PyObject* list = PyList_New(strings.size()); + PyObject* list = PyList_New(static_cast(strings.size())); for (std::size_t i = 0; i < strings.size(); ++i) { - PyList_SetItem(list, i, PyString_FromString(strings[i].c_str())); + PyList_SetItem(list, static_cast(i), PyString_FromString(strings[i].c_str())); } return list; } @@ -467,7 +466,7 @@ bool plot(const std::vector &x, const std::vector &y, const st Py_DECREF(kwargs); if(res) Py_DECREF(res); - return res; + return bool(res); } // TODO - it should be possible to make this work by implementing @@ -1325,7 +1324,7 @@ inline bool subplots_adjust(const std::map& keywords = {}) Py_DECREF(kwargs); if(res) Py_DECREF(res); - return res; + return bool(res); } template< typename Numeric> @@ -1376,7 +1375,7 @@ bool plot(const std::vector& x, const std::vector& y, const Py_DECREF(plot_args); if(res) Py_DECREF(res); - return res; + return bool(res); } template @@ -1810,7 +1809,7 @@ template bool plot(const std::vector& y, const std::string& format = "") { std::vector x(y.size()); - for(size_t i=0; i(i); return plot(x,y,format); } @@ -1912,7 +1911,7 @@ inline bool fignum_exists(long number) PyObject *res = PyObject_CallObject(detail::_interpreter::get().s_python_function_fignum_exists, args); if(!res) throw std::runtime_error("Call to fignum_exists() failed."); - bool ret = PyObject_IsTrue(res); + bool ret = bool(PyObject_IsTrue(res)); Py_DECREF(res); Py_DECREF(args); @@ -2075,7 +2074,7 @@ inline std::array xlim() PyObject* left = PyTuple_GetItem(res,0); PyObject* right = PyTuple_GetItem(res,1); - return { PyFloat_AsDouble(left), PyFloat_AsDouble(right) }; + return { {PyFloat_AsDouble(left), PyFloat_AsDouble(right)} }; } @@ -2090,7 +2089,7 @@ inline std::array ylim() PyObject* left = PyTuple_GetItem(res,0); PyObject* right = PyTuple_GetItem(res,1); - return { PyFloat_AsDouble(left), PyFloat_AsDouble(right) }; + return { {PyFloat_AsDouble(left), PyFloat_AsDouble(right)} }; } template @@ -2722,11 +2721,11 @@ inline std::vector> ginput(const int numClicks = 1, const Py_DECREF(args); if (!res) throw std::runtime_error("Call to ginput() failed."); - const size_t len = PyList_Size(res); + const size_t len = static_cast(PyList_Size(res)); std::vector> out; out.reserve(len); for (size_t i = 0; i < len; i++) { - PyObject *current = PyList_GetItem(res, i); + PyObject *current = PyList_GetItem(res, static_cast(i)); std::array position; position[0] = PyFloat_AsDouble(PyTuple_GetItem(current, 0)); position[1] = PyFloat_AsDouble(PyTuple_GetItem(current, 1)); @@ -2944,7 +2943,7 @@ class Plot PyObject* res = PyObject_CallObject(set_data_fct, plot_args); if (res) Py_DECREF(res); - return res; + return bool(res); } return false; }