aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/libshiboken/autodecref.h
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2017-06-09 10:06:35 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2017-06-09 09:11:47 +0000
commite25ed8d09b67a0b67dee4239513c00a6b7e701a4 (patch)
treee145da42c4e0cc1d2a40e24c313bc34d5de51817 /sources/shiboken2/libshiboken/autodecref.h
parent8dd21fcb2c9f0366b3d298781c8a852363a4df22 (diff)
libshiboken: Fix/Silence some MSVC warnings
autodecref.h(110): warning C4522: 'Shiboken::AutoDecRef': multiple assignment operators specified autodecref.h(78): warning C4800: 'PyObject *const ': forcing value to bool 'true' or 'false' (performance warning) conversions.h(282): warning C4800: 'long': forcing value to bool 'true' or 'false' (performance warning) basewrapper.cpp(625): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) basewrapper.cpp(654): warning C4800: 'SpecialCastFunction': forcing value to bool 'true' or 'false' (performance warning) basewrapper.cpp(1014): warning C4800: 'Shiboken::ParentInfo *': forcing value to bool 'true' or 'false' (performance warning) basewrapper.cpp(1044): warning C4800: 'void *': forcing value to bool 'true' or 'false' (performance warning) helper.cpp(56): warning C4244: 'initializing': conversion from 'Py_ssize_t' to 'int', possible loss of data shibokenbuffer.cpp(46): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning) Change-Id: If1517fde8e7670f258a56f6d845a66ebb3d82141 Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken2/libshiboken/autodecref.h')
-rw-r--r--sources/shiboken2/libshiboken/autodecref.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/sources/shiboken2/libshiboken/autodecref.h b/sources/shiboken2/libshiboken/autodecref.h
index 1fefcc259..a82bbb35c 100644
--- a/sources/shiboken2/libshiboken/autodecref.h
+++ b/sources/shiboken2/libshiboken/autodecref.h
@@ -43,6 +43,11 @@
#include "sbkpython.h"
#include "basewrapper.h"
+#ifdef _MSC_VER
+__pragma(warning(push))
+__pragma(warning(disable:4522)) // warning: C4522: 'Shiboken::AutoDecRef': multiple assignment operators specified
+#endif
+
struct SbkObject;
namespace Shiboken
{
@@ -75,7 +80,7 @@ public:
inline PyObject* object() { return m_pyObj; }
inline operator PyObject*() { return m_pyObj; }
inline operator PyTupleObject*() { return reinterpret_cast<PyTupleObject*>(m_pyObj); }
- inline operator bool() const { return m_pyObj; }
+ inline operator bool() const { return m_pyObj != 0; }
inline PyObject* operator->() { return m_pyObj; }
template<typename T>
@@ -111,5 +116,9 @@ private:
} // namespace Shiboken
+#ifdef _MSC_VER
+__pragma(warning(pop))
+#endif
+
#endif // AUTODECREF_H