aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cppgenerator.cpp8
-rw-r--r--cppgenerator.h2
-rw-r--r--tests/libsample/derived.h1
3 files changed, 8 insertions, 3 deletions
diff --git a/cppgenerator.cpp b/cppgenerator.cpp
index 8fc1cec0f..eda2e18fc 100644
--- a/cppgenerator.cpp
+++ b/cppgenerator.cpp
@@ -1765,9 +1765,11 @@ void CppGenerator::writeRichCompareFunction(QTextStream& s, const AbstractMetaCl
{
Indentation indent(INDENT);
s << INDENT;
- if (type->typeEntry()->isValue())
- s << type->name() << '*';
- else
+ if (type->typeEntry()->isValue()) {
+ AbstractMetaClass* clz = classes().findClass(type->typeEntry());
+ Q_ASSERT(clz);
+ s << clz->qualifiedCppName() << '*';
+ } else
s << translateTypeForWrapperMethod(type, metaClass);
s << " cpp_other = ";
if (type->typeEntry()->isValue())
diff --git a/cppgenerator.h b/cppgenerator.h
index 796273f82..0d7746ad6 100644
--- a/cppgenerator.h
+++ b/cppgenerator.h
@@ -34,6 +34,8 @@ class CppGenerator : public ShibokenGenerator
{
public:
CppGenerator();
+ void clazclasses(QString arg1);
+ void AbstractMeclasses(QString arg1);
protected:
QString fileNameForClass(const AbstractMetaClass* metaClass) const;
QList<AbstractMetaFunctionList> filterGroupedOperatorFunctions(const AbstractMetaClass* metaClass,
diff --git a/tests/libsample/derived.h b/tests/libsample/derived.h
index 965cd871d..162acbb7b 100644
--- a/tests/libsample/derived.h
+++ b/tests/libsample/derived.h
@@ -55,6 +55,7 @@ public:
public:
void uselessMethod() {}
SomeInnerClass operator+(const SomeInnerClass& other) { return other; }
+ bool operator==(const SomeInnerClass& other) { return true; }
};
Derived(int id = -1);