aboutsummaryrefslogtreecommitdiffstats
path: root/headergenerator.cpp
diff options
context:
space:
mode:
authorHugo Lima <hugo.lima@openbossa.org>2010-02-04 20:02:10 -0200
committerHugo Lima <hugo.lima@openbossa.org>2010-02-08 16:15:24 -0200
commit7e5fdc89ce33d301ef63c471b527442b760b6fc1 (patch)
tree7eb1c13e744737fb8f838b218eedc88aa847a5b9 /headergenerator.cpp
parent658f6cbbb19ec9c2a2f8a0a0d703d8107ce9d722 (diff)
Do not try to call constructors created on typesystem by add-function tag.
Reviewed by Renato Araújo <renato.filho@openbossa.org>
Diffstat (limited to 'headergenerator.cpp')
-rw-r--r--headergenerator.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/headergenerator.cpp b/headergenerator.cpp
index de2965956..ba87317d6 100644
--- a/headergenerator.cpp
+++ b/headergenerator.cpp
@@ -161,7 +161,12 @@ void HeaderGenerator::writeTypeConverterDecl(QTextStream& s, const TypeEntry* ty
const AbstractMetaClass* metaClass = classes().findClass(type->name());
bool isAbstractOrObjectType = (metaClass && metaClass->isAbstract()) || type->isObject();
- bool isValueTypeWithImplConversions = type->isValue() && !implicitConversions(type).isEmpty();
+ AbstractMetaFunctionList implicitConvs;
+ foreach (AbstractMetaFunction* func, implicitConversions(type)) {
+ if (!func->isUserAdded())
+ implicitConvs << func;
+ }
+ bool isValueTypeWithImplConversions = type->isValue() && !implicitConvs.isEmpty();
s << "struct ";
if (isValueTypeWithImplConversions)