From f0d7080e9e640fdc7b540aba69bfbc14fc96ce39 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Wed, 11 May 2016 11:53:02 +0200 Subject: qmake/tools: port the last remaining Q_FOREACH loops and add QT_NO_FOREACH Port the last four remaining Q_FOREACH users in qmake and uic to C++11 range-for and mark all qtbase tools (incl. qmake) as Q_FOREACH-free, using QT_NO_FOREACH. Change-Id: Ief4e5877269e7a853e4cf05e58861a448e822d3d Reviewed-by: Oswald Buddenhagen Reviewed-by: Lars Knoll --- src/tools/bootstrap-dbus/bootstrap-dbus.pro | 1 + src/tools/bootstrap/bootstrap.pro | 1 + src/tools/moc/moc.pro | 7 ++++++- src/tools/qdbuscpp2xml/qdbuscpp2xml.pro | 2 +- src/tools/qdbusxml2cpp/qdbusxml2cpp.pro | 2 +- src/tools/qlalr/qlalr.pro | 3 +++ src/tools/rcc/rcc.pro | 2 +- src/tools/uic/cpp/cppwriteinitialization.cpp | 10 +++++----- src/tools/uic/uic.pro | 2 +- 9 files changed, 20 insertions(+), 10 deletions(-) (limited to 'src/tools') diff --git a/src/tools/bootstrap-dbus/bootstrap-dbus.pro b/src/tools/bootstrap-dbus/bootstrap-dbus.pro index 3b28c23311..c3ed27d979 100644 --- a/src/tools/bootstrap-dbus/bootstrap-dbus.pro +++ b/src/tools/bootstrap-dbus/bootstrap-dbus.pro @@ -5,6 +5,7 @@ TARGET = QtBootstrapDBus CONFIG += minimal_syncqt internal_module force_bootstrap DEFINES += \ + QT_NO_FOREACH \ QT_NO_CAST_FROM_ASCII MODULE_INCNAME = QtDBus diff --git a/src/tools/bootstrap/bootstrap.pro b/src/tools/bootstrap/bootstrap.pro index 3cfdbf3429..5fbabe8fe4 100644 --- a/src/tools/bootstrap/bootstrap.pro +++ b/src/tools/bootstrap/bootstrap.pro @@ -23,6 +23,7 @@ MODULE_DEFINES = \ DEFINES += \ $$MODULE_DEFINES \ QT_CRYPTOGRAPHICHASH_ONLY_SHA1 \ + QT_NO_FOREACH \ QT_NO_CAST_FROM_ASCII DEFINES -= QT_EVAL diff --git a/src/tools/moc/moc.pro b/src/tools/moc/moc.pro index d39749a318..ccd29341d0 100644 --- a/src/tools/moc/moc.pro +++ b/src/tools/moc/moc.pro @@ -1,7 +1,12 @@ option(host_build) CONFIG += force_bootstrap -DEFINES += QT_MOC QT_NO_CAST_FROM_ASCII QT_NO_CAST_FROM_BYTEARRAY QT_NO_COMPRESS +DEFINES += \ + QT_MOC \ + QT_NO_CAST_FROM_ASCII \ + QT_NO_CAST_FROM_BYTEARRAY \ + QT_NO_COMPRESS \ + QT_NO_FOREACH include(moc.pri) HEADERS += qdatetime_p.h diff --git a/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro b/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro index d65b5ce6ef..5ac3159797 100644 --- a/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro +++ b/src/tools/qdbuscpp2xml/qdbuscpp2xml.pro @@ -2,7 +2,7 @@ option(host_build) QT = core-private force_bootstrap: QT += bootstrap_dbus-private else: QT += dbus-private -DEFINES += QT_NO_CAST_FROM_ASCII +DEFINES += QT_NO_CAST_FROM_ASCII QT_NO_FOREACH QMAKE_CXXFLAGS += $$QT_HOST_CFLAGS_DBUS include(../moc/moc.pri) diff --git a/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro b/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro index 6efcf323b8..cb14db5fef 100644 --- a/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro +++ b/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro @@ -2,7 +2,7 @@ option(host_build) QT = core-private force_bootstrap: QT += bootstrap_dbus-private else: QT += dbus-private -DEFINES += QT_NO_CAST_FROM_ASCII +DEFINES += QT_NO_CAST_FROM_ASCII QT_NO_FOREACH QMAKE_CXXFLAGS += $$QT_HOST_CFLAGS_DBUS SOURCES = qdbusxml2cpp.cpp diff --git a/src/tools/qlalr/qlalr.pro b/src/tools/qlalr/qlalr.pro index 08cf6a1591..bd5f337c64 100644 --- a/src/tools/qlalr/qlalr.pro +++ b/src/tools/qlalr/qlalr.pro @@ -22,4 +22,7 @@ HEADERS += \ OTHER_FILES += \ lalr.g +DEFINES += \ + QT_NO_FOREACH + load(qt_tool) diff --git a/src/tools/rcc/rcc.pro b/src/tools/rcc/rcc.pro index de3cc90e1b..701f15ff22 100644 --- a/src/tools/rcc/rcc.pro +++ b/src/tools/rcc/rcc.pro @@ -1,7 +1,7 @@ option(host_build) CONFIG += force_bootstrap -DEFINES += QT_RCC QT_NO_CAST_FROM_ASCII +DEFINES += QT_RCC QT_NO_CAST_FROM_ASCII QT_NO_FOREACH include(rcc.pri) SOURCES += main.cpp diff --git a/src/tools/uic/cpp/cppwriteinitialization.cpp b/src/tools/uic/cpp/cppwriteinitialization.cpp index 026d099dc0..7466da47f3 100644 --- a/src/tools/uic/cpp/cppwriteinitialization.cpp +++ b/src/tools/uic/cpp/cppwriteinitialization.cpp @@ -770,7 +770,7 @@ void WriteInitialization::acceptWidget(DomWidget *node) // // Special handling for qtableview/qtreeview fake header attributes // - static QStringList realPropertyNames = + static const QStringList realPropertyNames = (QStringList() << QLatin1String("visible") << QLatin1String("cascadingSectionResizes") << QLatin1String("defaultSectionSize") @@ -782,7 +782,7 @@ void WriteInitialization::acceptWidget(DomWidget *node) if (m_uic->customWidgetsInfo()->extends(className, QLatin1String("QTreeView")) || m_uic->customWidgetsInfo()->extends(className, QLatin1String("QTreeWidget"))) { DomPropertyList headerProperties; - foreach (const QString &realPropertyName, realPropertyNames) { + for (const QString &realPropertyName : realPropertyNames) { const QString upperPropertyName = realPropertyName.at(0).toUpper() + realPropertyName.mid(1); const QString fakePropertyName = QLatin1String("header") + upperPropertyName; @@ -797,13 +797,13 @@ void WriteInitialization::acceptWidget(DomWidget *node) } else if (m_uic->customWidgetsInfo()->extends(className, QLatin1String("QTableView")) || m_uic->customWidgetsInfo()->extends(className, QLatin1String("QTableWidget"))) { - static QStringList headerPrefixes = + static const QStringList headerPrefixes = (QStringList() << QLatin1String("horizontalHeader") << QLatin1String("verticalHeader")); - foreach (const QString &headerPrefix, headerPrefixes) { + for (const QString &headerPrefix : headerPrefixes) { DomPropertyList headerProperties; - foreach (const QString &realPropertyName, realPropertyNames) { + for (const QString &realPropertyName : realPropertyNames) { const QString upperPropertyName = realPropertyName.at(0).toUpper() + realPropertyName.mid(1); const QString fakePropertyName = headerPrefix + upperPropertyName; diff --git a/src/tools/uic/uic.pro b/src/tools/uic/uic.pro index a625bdef9a..8008dde07a 100644 --- a/src/tools/uic/uic.pro +++ b/src/tools/uic/uic.pro @@ -1,6 +1,6 @@ option(host_build) -DEFINES += QT_UIC QT_NO_CAST_FROM_ASCII +DEFINES += QT_UIC QT_NO_CAST_FROM_ASCII QT_NO_FOREACH include(uic.pri) include(cpp/cpp.pri) -- cgit v1.2.3