diff options
author | Hugo Parente Lima <hugo.pl@gmail.com> | 2011-05-10 14:46:27 -0300 |
---|---|---|
committer | Hugo Parente Lima <hugo.pl@gmail.com> | 2012-03-08 16:15:22 -0300 |
commit | bdd992a76956f86166256649f8bb3d42ce7439a2 (patch) | |
tree | 2dedf6802d8b24d5730df8f316ebd9de1c658f39 /generator | |
parent | ce1d707bef6426a1f18f92ab729dc4d89fbe63e4 (diff) |
Don't set the tp_init when there are no public constructors available.
Reviewer: Marcelo Lira <marcelo.lira@openbossa.org>
Renato Araújo <renato.filho@openbossa.org>
Diffstat (limited to 'generator')
-rw-r--r-- | generator/cppgenerator.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/generator/cppgenerator.cpp b/generator/cppgenerator.cpp index 402efb514..07b2111ed 100644 --- a/generator/cppgenerator.cpp +++ b/generator/cppgenerator.cpp @@ -2528,7 +2528,11 @@ void CppGenerator::writeClassDefinition(QTextStream& s, const AbstractMetaClass* QString cppClassName = metaClass->qualifiedCppName(); QString className = cpythonTypeName(metaClass).replace(QRegExp("_Type$"), ""); QString baseClassName('0'); - AbstractMetaFunctionList ctors = metaClass->queryFunctions(AbstractMetaClass::Constructors); + AbstractMetaFunctionList ctors; + foreach (AbstractMetaFunction* f, metaClass->queryFunctions(AbstractMetaClass::Constructors)) { + if (!f->isPrivate() && !f->isModifiedRemoved()) + ctors.append(f); + } if (!metaClass->baseClass()) baseClassName = "reinterpret_cast<PyTypeObject*>(&SbkObject_Type)"; |