aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/tests
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2017-11-24 16:22:45 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2017-11-24 17:50:19 +0000
commit909efeedaf05ab9e3a5e8cd805efd9d58ba7a198 (patch)
treea89b2580d9fd8dc34e4973850885585641bdbff4 /sources/shiboken2/tests
parent7108de44da71aaf0511be543f1b21a6c38b86b1e (diff)
shiboken: Do not generate richcompare methods for namespaces
shiboken used to generate richcompare methods for namespaces when it contained free comparison operators for classes in that namespace, resulting in compile errors. For example: namespace Qt3DRender { bool operator!=(const QGraphicsApiFilter &reference, const QGraphicsApiFilter &sample) ... Add a check preventing that. Task-number: PYSIDE-487 Change-Id: If2fa1de1bfb0fdc11c9415421dab0c7e13abc500 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'sources/shiboken2/tests')
-rw-r--r--sources/shiboken2/tests/libsample/sample.cpp12
-rw-r--r--sources/shiboken2/tests/libsample/sample.h3
2 files changed, 13 insertions, 2 deletions
diff --git a/sources/shiboken2/tests/libsample/sample.cpp b/sources/shiboken2/tests/libsample/sample.cpp
index fa1e1fda3..850674bd9 100644
--- a/sources/shiboken2/tests/libsample/sample.cpp
+++ b/sources/shiboken2/tests/libsample/sample.cpp
@@ -28,12 +28,20 @@
#include "sample.h"
-sample::sample::sample(int value) : m_value(value)
+namespace sample
+{
+
+sample::sample(int value) : m_value(value)
{
}
-int sample::sample::value() const
+int sample::value() const
{
return m_value;
}
+bool operator==(const sample&s1, const sample&s2)
+{
+ return s1.value() == s2.value();
+}
+} // namespace sample
diff --git a/sources/shiboken2/tests/libsample/sample.h b/sources/shiboken2/tests/libsample/sample.h
index 46e3d0d1a..68b54e067 100644
--- a/sources/shiboken2/tests/libsample/sample.h
+++ b/sources/shiboken2/tests/libsample/sample.h
@@ -43,6 +43,9 @@ namespace sample
private:
int m_value;
};
+
+ // shiboken must not generate richcompare for namespace sample
+ LIBSAMPLE_API bool operator==(const sample&s1, const sample&s2);
}
#endif