aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit/unittest/data/highlightingmarks.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/unittest/data/highlightingmarks.cpp')
-rw-r--r--tests/unit/unittest/data/highlightingmarks.cpp52
1 files changed, 52 insertions, 0 deletions
diff --git a/tests/unit/unittest/data/highlightingmarks.cpp b/tests/unit/unittest/data/highlightingmarks.cpp
index c4e18d65d1..edbe0a14c2 100644
--- a/tests/unit/unittest/data/highlightingmarks.cpp
+++ b/tests/unit/unittest/data/highlightingmarks.cpp
@@ -600,6 +600,44 @@ class Property {
Q_PROPERTY(const QString str READ getStr)
};
+struct X {
+ void operator*(int) {}
+};
+
+void operator*(X, float) {}
+
+void CallSite() {
+ X x;
+ int y = 10;
+ float z = 10;
+ x * y;
+ x * z;
+}
+
+struct Dummy {
+ Dummy operator<<=(int key);
+ Dummy operator()(int a);
+ int& operator[] (unsigned index);
+ void* operator new(unsigned size);
+ void operator delete(void* ptr);
+ void* operator new[](unsigned size);
+ void operator delete[](void* ptr);
+};
+
+void TryOverloadedOperators(Dummy object)
+{
+ object <<= 3;
+
+ Dummy stacked;
+ stacked(4);
+ stacked[1];
+ int *i = new int;
+ Dummy* use_new = new Dummy();
+ delete use_new;
+ Dummy* many = new Dummy[10];
+ delete [] many;
+}
+
enum {
Test = 0
};
@@ -611,3 +649,17 @@ class B {
};
};
}
+
+struct Dummy2 {
+ Dummy2 operator()();
+ int operator*();
+ Dummy2 operator=(int foo);
+};
+
+void TryOverloadedOperators2(Dummy object)
+{
+ Dummy2 dummy2;
+ dummy2();
+ *dummy2;
+ dummy2 = 3;
+}