aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@digia.com>2012-12-04 11:42:21 +0100
committerNikolai Kosjar <nikolai.kosjar@digia.com>2012-12-06 10:56:19 +0100
commit6d9c7d93f200a17e4c82a20d1924f1d451bcab2b (patch)
treee3e864582a8299b1b83de2543a05f5974774703a
parenta281dfd4b1d9117b3270719d45dd5de5e9cd18f3 (diff)
C++: Fix order of written classes in cplusplus-update-frontend
The tool produced always different output because of an iteration through a QSet (order not defined). Change-Id: I002997cc7e20a89e428cad439eb7afee5abb8b86 Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
-rw-r--r--src/tools/cplusplus-update-frontend/cplusplus-update-frontend.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/tools/cplusplus-update-frontend/cplusplus-update-frontend.cpp b/src/tools/cplusplus-update-frontend/cplusplus-update-frontend.cpp
index 6bc5b2162f..02369818fb 100644
--- a/src/tools/cplusplus-update-frontend/cplusplus-update-frontend.cpp
+++ b/src/tools/cplusplus-update-frontend/cplusplus-update-frontend.cpp
@@ -1599,7 +1599,7 @@ void generateASTPatternBuilder_h(const QDir &cplusplusDir)
<< endl;
Control *control = AST_h_document->control();
- QSet<QString> listClasses;
+ QSet<QString> classesSet;
foreach (ClassSpecifierAST *classNode, astNodes.deriveds) {
Class *klass = classNode->symbol;
@@ -1639,7 +1639,7 @@ void generateASTPatternBuilder_h(const QDir &cplusplusDir)
const QString tyName = oo(ptrTy->elementType());
if (tyName.endsWith(QLatin1String("ListAST")))
- listClasses.insert(tyName);
+ classesSet.insert(tyName);
if (tyName.endsWith(QLatin1String("AST"))) {
if (! first)
out << ", ";
@@ -1669,7 +1669,9 @@ void generateASTPatternBuilder_h(const QDir &cplusplusDir)
<< endl;
}
- foreach (const QString &className, listClasses) {
+ QStringList classesList = classesSet.toList();
+ qSort(classesList);
+ foreach (const QString &className, classesList) {
const QString methodName = className.left(className.length() - 3);
const QString elementName = className.left(className.length() - 7) + QLatin1String("AST");
out