From 3e2500cab4c5a8b0bd0fb532ca6ed155c36c6dd5 Mon Sep 17 00:00:00 2001 From: Renato Filho Date: Wed, 9 Jun 2010 15:15:46 -0300 Subject: Fixed warning message output. Reviewer: Luciano Wolf , Marcelo Lira --- abstractmetabuilder.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'abstractmetabuilder.cpp') diff --git a/abstractmetabuilder.cpp b/abstractmetabuilder.cpp index 5c326abb9..2fb50632b 100644 --- a/abstractmetabuilder.cpp +++ b/abstractmetabuilder.cpp @@ -349,6 +349,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) addAbstractMetaClass(cls); } + ReportHandler::flush(); // We need to know all global enums QHash enumMap = m_dom->enumMap(); @@ -361,6 +362,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) m_globalEnums << metaEnum; } } + ReportHandler::flush(); QHash namespaceMap = m_dom->namespaceMap(); ReportHandler::setProgressReference(namespaceMap); @@ -370,6 +372,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) if (metaClass) m_metaClasses << metaClass; } + ReportHandler::flush(); // Go through all typedefs to see if we have defined any // specific typedefs to be used as classes. @@ -380,6 +383,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) AbstractMetaClass* cls = traverseTypeAlias(typeAlias); addAbstractMetaClass(cls); } + ReportHandler::flush(); // Global functions foreach (FunctionModelItem func, m_dom->functions()) { @@ -415,6 +419,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) if (!cls->isInterface() && !cls->isNamespace()) setupInheritance(cls); } + ReportHandler::flush(); ReportHandler::setProgressReference(m_metaClasses); foreach (AbstractMetaClass* cls, m_metaClasses) { @@ -437,6 +442,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) if (cls->isAbstract() && !cls->isInterface()) cls->typeEntry()->setLookupName(cls->typeEntry()->targetLangName() + "$ConcreteWrapper"); } + ReportHandler::flush(); QList entries = types->entries().values(); ReportHandler::setProgressReference(entries); @@ -490,6 +496,7 @@ bool AbstractMetaBuilder::build(QIODevice* input) } } } + ReportHandler::flush(); { FunctionList hashFunctions = m_dom->findFunctions("qHash"); @@ -1613,8 +1620,8 @@ AbstractMetaFunction* AbstractMetaBuilder::traverseFunction(FunctionModelItem fu } AbstractMetaArgumentList metaArguments; - int firstDefaultArgument = 0; + for (int i = 0; i < arguments.size(); ++i) { ArgumentModelItem arg = arguments.at(i); @@ -1632,11 +1639,8 @@ AbstractMetaFunction* AbstractMetaBuilder::traverseFunction(FunctionModelItem fu return metaFunction; } AbstractMetaArgument* metaArgument = createMetaArgument(); - metaArgument->setType(metaType); - - if (arg->name().isEmpty() && metaFunction->argumentName(i).isEmpty()) - ReportHandler::warning(QString("Argument %1 on function '%2::%3' declared without name.").arg(i).arg(className).arg(functionItem->name())); + metaArgument->setType(metaType); metaArgument->setName(arg->name()); metaArgument->setArgumentIndex(i); metaArguments << metaArgument; @@ -1672,6 +1676,11 @@ AbstractMetaFunction* AbstractMetaBuilder::traverseFunction(FunctionModelItem fu if (metaArg->type()->isEnum() || metaArg->type()->isFlags()) m_enumDefaultArguments << QPair(metaArg, metaFunction); } + + //Check for missing argument name + if (!metaArg->hasName() && !metaFunction->isOperatorOverload() && metaFunction->argumentName(i, false, m_currentClass).isEmpty()) + ReportHandler::warning(QString("Argument %1 on function '%2::%3' declared without name.").arg(i).arg(className).arg(functionItem->name())); + } #if 0 -- cgit v1.2.3