From 7cd569c703acfa749f05d3cfebb05ad5b8f8762f Mon Sep 17 00:00:00 2001 From: Axel Huebl Date: Mon, 11 Jan 2016 20:15:40 +0100 Subject: [PATCH] Fix Compile Error: str Naming MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes a build error compiling with `nvcc/7.5` + `gcc/4.9.2` causing a ``` ./include/pybind11/pybind11.h(952): here ./include/pybind11/pytypes.h: In member function ‘pybind11::str pybind11::handle::str() const’: ./include/pybind11/pytypes.h:269:8: error: expected primary-expression before ‘class’ return pybind11::str(str, false); ^ ./include/pybind11/pytypes.h:269:8: error: expected ‘;’ before ‘class’ ./include/pybind11/pytypes.h:269:8: error: expected primary-expression before ‘class’ ``` --- include/pybind11/pytypes.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/pybind11/pytypes.h b/include/pybind11/pytypes.h index 2ce6ed229..dd86bbbf2 100644 --- a/include/pybind11/pytypes.h +++ b/include/pybind11/pytypes.h @@ -261,12 +261,12 @@ public: }; inline pybind11::str handle::str() const { - PyObject *str = PyObject_Str(m_ptr); + PyObject *strValue = PyObject_Str(m_ptr); #if PY_MAJOR_VERSION < 3 - PyObject *unicode = PyUnicode_FromEncodedObject(str, "utf-8", nullptr); - Py_XDECREF(str); str = unicode; + PyObject *unicode = PyUnicode_FromEncodedObject(strValue, "utf-8", nullptr); + Py_XDECREF(strValue); strValue = unicode; #endif - return pybind11::str(str, false); + return pybind11::str(strValue, false); } class bytes : public object {