diff options
Diffstat (limited to 'src/plugins')
10 files changed, 92 insertions, 87 deletions
diff --git a/src/plugins/projectexplorer/projectnodes.cpp b/src/plugins/projectexplorer/projectnodes.cpp index 78c42880dff..86766a586c8 100644 --- a/src/plugins/projectexplorer/projectnodes.cpp +++ b/src/plugins/projectexplorer/projectnodes.cpp @@ -557,7 +557,7 @@ const QList<Node *> FolderNode::nodes() const return Utils::toRawPointer<QList>(m_nodes); } -QList<FileNode*> FolderNode::fileNodes() const +QList<FileNode *> FolderNode::fileNodes() const { QList<FileNode *> result; for (const std::unique_ptr<Node> &n : m_nodes) { diff --git a/src/plugins/qmakeprojectmanager/customwidgetwizard/plugingenerator.cpp b/src/plugins/qmakeprojectmanager/customwidgetwizard/plugingenerator.cpp index 1ac96007e90..634b73507cf 100644 --- a/src/plugins/qmakeprojectmanager/customwidgetwizard/plugingenerator.cpp +++ b/src/plugins/qmakeprojectmanager/customwidgetwizard/plugingenerator.cpp @@ -247,7 +247,7 @@ QList<Core::GeneratedFile> PluginGenerator::generatePlugin(const GenerationPara // Copy icons that are not in the plugin source base directory yet (that is, // probably all), add them to the resource file QString iconFiles; - foreach (QString icon, pluginIcons) { + for (QString icon : qAsConst(pluginIcons)) { const QFileInfo qfi(icon); if (qfi.dir() != slashLessBaseDir) { const QString newIcon = baseDir + qfi.fileName(); diff --git a/src/plugins/qmakeprojectmanager/externaleditors.cpp b/src/plugins/qmakeprojectmanager/externaleditors.cpp index 4462fbb822f..e1f3ff7d2e7 100644 --- a/src/plugins/qmakeprojectmanager/externaleditors.cpp +++ b/src/plugins/qmakeprojectmanager/externaleditors.cpp @@ -111,10 +111,10 @@ ExternalQtEditor *ExternalQtEditor::createDesignerEditor() } } -static QString findFirstCommand(QVector<QtSupport::QtVersion *> qtVersions, +static QString findFirstCommand(const QVector<QtSupport::QtVersion *> &qtVersions, ExternalQtEditor::CommandForQtVersion command) { - foreach (QtSupport::QtVersion *qt, qtVersions) { + for (QtSupport::QtVersion *qt : qtVersions) { if (qt) { const QString binary = command(qt); if (!binary.isEmpty()) diff --git a/src/plugins/qmakeprojectmanager/librarydetailscontroller.cpp b/src/plugins/qmakeprojectmanager/librarydetailscontroller.cpp index 117a1cbe0e2..e7a991b3dfa 100644 --- a/src/plugins/qmakeprojectmanager/librarydetailscontroller.cpp +++ b/src/plugins/qmakeprojectmanager/librarydetailscontroller.cpp @@ -1029,7 +1029,8 @@ void InternalLibraryDetailsController::updateProFile() QTC_ASSERT(bs, return); QDir rootDir(m_rootProjectPath); - foreach (QmakeProFile *proFile, bs->rootProFile()->allProFiles()) { + const QList<QmakeProFile *> proFiles = bs->rootProFile()->allProFiles(); + for (QmakeProFile *proFile : proFiles) { QmakeProjectManager::ProjectType type = proFile->projectType(); if (type != ProjectType::SharedLibraryTemplate && type != ProjectType::StaticLibraryTemplate) continue; diff --git a/src/plugins/qmakeprojectmanager/makefileparse.cpp b/src/plugins/qmakeprojectmanager/makefileparse.cpp index 711d839131b..a01eb0e5afd 100644 --- a/src/plugins/qmakeprojectmanager/makefileparse.cpp +++ b/src/plugins/qmakeprojectmanager/makefileparse.cpp @@ -97,9 +97,8 @@ void MakeFileParse::parseArgs(const QString &args, const QString &project, void dumpQMakeAssignments(const QList<QMakeAssignment> &list) { - foreach (const QMakeAssignment &qa, list) { + for (const QMakeAssignment &qa : list) qCDebug(MakeFileParse::logging()) << " " << qa.variable << qa.op << qa.value; - } } QList<QMakeAssignment> MakeFileParse::parseAssignments(const QList<QMakeAssignment> &assignments) @@ -107,11 +106,11 @@ QList<QMakeAssignment> MakeFileParse::parseAssignments(const QList<QMakeAssignme bool foundSeparateDebugInfo = false; bool foundForceDebugInfo = false; QList<QMakeAssignment> filteredAssignments; - foreach (const QMakeAssignment &qa, assignments) { + for (const QMakeAssignment &qa : assignments) { if (qa.variable == QLatin1String("CONFIG")) { - QStringList values = qa.value.split(QLatin1Char(' ')); + const QStringList values = qa.value.split(QLatin1Char(' ')); QStringList newValues; - foreach (const QString &value, values) { + for (const QString &value : values) { if (value == QLatin1String("debug")) { if (qa.op == QLatin1String("+=")) { m_qmakeBuildConfig.explicitDebug = true; @@ -345,11 +344,11 @@ void MakeFileParse::parseCommandLine(const QString &command, const QString &proj // Create command line of all unfiltered arguments const QList<QMakeAssignment> &assignmentsToUse = m_mode == Mode::FilterKnownConfigValues ? filteredAssignments : assignments; - foreach (const QMakeAssignment &qa, assignmentsToUse) + for (const QMakeAssignment &qa : assignmentsToUse) ProcessArgs::addArg(&m_unparsedArguments, qa.variable + qa.op + qa.value); if (!afterAssignments.isEmpty()) { ProcessArgs::addArg(&m_unparsedArguments, QLatin1String("-after")); - foreach (const QMakeAssignment &qa, afterAssignments) + for (const QMakeAssignment &qa : qAsConst(afterAssignments)) ProcessArgs::addArg(&m_unparsedArguments, qa.variable + qa.op + qa.value); } } diff --git a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp index 0d6e208fa5e..b809ae17402 100644 --- a/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp +++ b/src/plugins/qmakeprojectmanager/qmakebuildconfiguration.cpp @@ -271,13 +271,12 @@ void QmakeBuildConfiguration::updateProblemLabel() allGood = false; if (allGood) { - Tasks issues; - issues = version->reportIssues(proFileName, buildDirectory().toString()); + Tasks issues = version->reportIssues(proFileName, buildDirectory().toString()); Utils::sort(issues); if (!issues.isEmpty()) { QString text = QLatin1String("<nobr>"); - foreach (const ProjectExplorer::Task &task, issues) { + for (const ProjectExplorer::Task &task : qAsConst(issues)) { QString type; switch (task.type) { case ProjectExplorer::Task::Error: diff --git a/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp b/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp index f05144e2b60..e8af0bef33e 100644 --- a/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp +++ b/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp @@ -163,7 +163,7 @@ QmakeProject *QmakePriFile::project() const return static_cast<QmakeProject *>(m_buildSystem->project()); } -QVector<QmakePriFile *> QmakePriFile::children() const +const QVector<QmakePriFile *> QmakePriFile::children() const { return m_children; } @@ -255,7 +255,8 @@ QSet<FilePath> QmakePriFile::recursiveEnumerate(const QString &folder) QSet<FilePath> result; QDir dir(folder); dir.setFilter(dir.filter() | QDir::NoDotAndDotDot); - foreach (const QFileInfo &file, dir.entryInfoList()) { + const QFileInfoList entries = dir.entryInfoList(); + for (const QFileInfo &file : entries) { if (file.isDir() && !file.isSymLink()) result += recursiveEnumerate(file.absoluteFilePath()); else if (!Core::EditorManager::isAutoSaveFile(file.fileName())) @@ -271,7 +272,7 @@ static QStringList fileListForVar( const QVector<ProFileEvaluator::SourceFile> &sources = sourceFiles[varName]; QStringList result; result.reserve(sources.size()); - foreach (const ProFileEvaluator::SourceFile &sf, sources) + for (const ProFileEvaluator::SourceFile &sf : sources) result << sf.fileName; return result; } @@ -280,7 +281,7 @@ void QmakePriFile::extractSources( QHash<int, QmakePriFileEvalResult *> proToResult, QmakePriFileEvalResult *fallback, QVector<ProFileEvaluator::SourceFile> sourceFiles, FileType type, bool cumulative) { - foreach (const ProFileEvaluator::SourceFile &source, sourceFiles) { + for (const ProFileEvaluator::SourceFile &source : qAsConst(sourceFiles)) { auto *result = proToResult.value(source.proFileId); if (!result) result = fallback; @@ -401,16 +402,11 @@ bool QmakePriFile::folderChanged(const QString &changedFolder, const QSet<FilePa { qCDebug(qmakeParse()) << "QmakePriFile::folderChanged"; - QSet<FilePath> addedFiles = newFiles; - addedFiles.subtract(m_recursiveEnumerateFiles); - - QSet<FilePath> removedFiles = m_recursiveEnumerateFiles; - removedFiles.subtract(newFiles); - - foreach (const FilePath &file, removedFiles) { - if (!file.isChildOf(FilePath::fromString(changedFolder))) - removedFiles.remove(file); - } + const QSet<FilePath> addedFiles = newFiles - m_recursiveEnumerateFiles; + const QSet<FilePath> removedFiles = Utils::filtered(m_recursiveEnumerateFiles - newFiles, + [changedFolder](const FilePath &file) { + return file.isChildOf(FilePath::fromString(changedFolder)); + }); if (addedFiles.isEmpty() && removedFiles.isEmpty()) return false; @@ -420,8 +416,8 @@ bool QmakePriFile::folderChanged(const QString &changedFolder, const QSet<FilePa // Apply the differences per file type for (int i = 0; i < static_cast<int>(FileType::FileTypeSize); ++i) { auto type = static_cast<FileType>(i); - QSet<FilePath> add = filterFilesRecursiveEnumerata(type, addedFiles); - QSet<FilePath> remove = filterFilesRecursiveEnumerata(type, removedFiles); + const QSet<FilePath> add = filterFilesRecursiveEnumerata(type, addedFiles); + const QSet<FilePath> remove = filterFilesRecursiveEnumerata(type, removedFiles); if (!add.isEmpty() || !remove.isEmpty()) { qCDebug(qmakeParse()) << "For type" << static_cast<int>(type) <<"\n" @@ -451,7 +447,7 @@ bool QmakePriFile::deploysFolder(const QString &folder) const if (!f.endsWith(slash)) f.append(slash); - foreach (const QString &wf, m_watchedFolders) { + for (const QString &wf : qAsConst(m_watchedFolders)) { if (f.startsWith(wf) && (wf.endsWith(slash) || (wf.length() < f.length() && f.at(wf.length()) == slash))) @@ -538,10 +534,10 @@ bool QmakePriFile::addFiles(const FilePaths &filePaths, FilePaths *notAdded) } FilePaths failedFiles; - foreach (const QString &type, typeFileMap.keys()) { - const FilePaths typeFiles = typeFileMap.value(type); + for (auto it = typeFileMap.constBegin(); it != typeFileMap.constEnd(); ++it) { + const FilePaths &typeFiles = *it; FilePaths qrcFiles; // the list of qrc files referenced from ui files - if (type == QLatin1String(ProjectExplorer::Constants::RESOURCE_MIMETYPE)) { + if (it.key() == QLatin1String(ProjectExplorer::Constants::RESOURCE_MIMETYPE)) { for (const FilePath &formFile : typeFiles) { const FilePaths resourceFiles = formResources(formFile); for (const FilePath &resourceFile : resourceFiles) @@ -563,7 +559,7 @@ bool QmakePriFile::addFiles(const FilePaths &filePaths, FilePaths *notAdded) } FilePath::sort(uniqueFilePaths); - changeFiles(type, uniqueFilePaths, &failedFiles, AddToProFile); + changeFiles(it.key(), uniqueFilePaths, &failedFiles, AddToProFile); if (notAdded) *notAdded += failedFiles; changeFiles(QLatin1String(ProjectExplorer::Constants::RESOURCE_MIMETYPE), uniqueQrcFiles, &failedFiles, AddToProFile); @@ -583,7 +579,8 @@ bool QmakePriFile::removeFiles(const FilePaths &filePaths, FilePaths *notRemoved const MimeType mt = Utils::mimeTypeForFile(file); typeFileMap[mt.name()] << file; } - foreach (const QString &type, typeFileMap.keys()) { + const QStringList types = typeFileMap.keys(); + for (const QString &type : types) { const FilePaths typeFiles = typeFileMap.value(type); changeFiles(type, typeFiles, &failedFiles, RemoveFromProFile); if (notRemoved) @@ -950,10 +947,10 @@ QStringList QmakePriFile::varNames(FileType type, QtSupport::ProFileReader *read break; case FileType::Source: { vars << QLatin1String("SOURCES"); - QStringList listOfExtraCompilers = readerExact->values(QLatin1String("QMAKE_EXTRA_COMPILERS")); - foreach (const QString &var, listOfExtraCompilers) { - QStringList inputs = readerExact->values(var + QLatin1String(".input")); - foreach (const QString &input, inputs) + const QStringList listOfExtraCompilers = readerExact->values("QMAKE_EXTRA_COMPILERS"); + for (const QString &var : listOfExtraCompilers) { + const QStringList inputs = readerExact->values(var + QLatin1String(".input")); + for (const QString &input : inputs) // FORMS, RESOURCES, and STATECHARTS are handled below, HEADERS and SOURCES above if (input != "FORMS" && input != "STATECHARTS" @@ -1059,11 +1056,11 @@ QSet<FilePath> QmakePriFile::filterFilesProVariables(FileType fileType, const QS return files; QSet<FilePath> result; if (fileType == FileType::QML) { - foreach (const FilePath &file, files) + for (const FilePath &file : files) if (file.toString().endsWith(QLatin1String(".qml"))) result << file; } else { - foreach (const FilePath &file, files) + for (const FilePath &file : files) if (!file.toString().endsWith(QLatin1String(".qml"))) result << file; } @@ -1076,11 +1073,11 @@ QSet<FilePath> QmakePriFile::filterFilesRecursiveEnumerata(FileType fileType, co if (fileType != FileType::QML && fileType != FileType::Unknown) return result; if (fileType == FileType::QML) { - foreach (const FilePath &file, files) + for (const FilePath &file : files) if (file.toString().endsWith(QLatin1String(".qml"))) result << file; } else { - foreach (const FilePath &file, files) + for (const FilePath &file : files) if (!file.toString().endsWith(QLatin1String(".qml"))) result << file; } @@ -1123,7 +1120,8 @@ const QmakeProFile *QmakeProFile::findProFile(const FilePath &fileName) const QByteArray QmakeProFile::cxxDefines() const { QByteArray result; - foreach (const QString &def, variableValue(Variable::Defines)) { + const QStringList defs = variableValue(Variable::Defines); + for (const QString &def : defs) { // 'def' is shell input, so interpret it. ProcessArgs::SplitError error = ProcessArgs::SplitOk; const QStringList args = ProcessArgs::splitArgs(def, HostOsInfo::hostOs(), false, &error); @@ -1237,7 +1235,7 @@ QString QmakeProFile::singleVariableValue(const Variable var) const void QmakeProFile::setParseInProgressRecursive(bool b) { setParseInProgress(b); - foreach (QmakePriFile *c, children()) { + for (QmakePriFile *c : children()) { if (auto node = dynamic_cast<QmakeProFile *>(c)) node->setParseInProgressRecursive(b); } @@ -1253,7 +1251,7 @@ void QmakeProFile::setParseInProgress(bool b) void QmakeProFile::setValidParseRecursive(bool b) { m_validParse = b; - foreach (QmakePriFile *c, children()) { + for (QmakePriFile *c : children()) { if (auto *node = dynamic_cast<QmakeProFile *>(c)) node->setValidParseRecursive(b); } @@ -1396,10 +1394,11 @@ QmakeEvalResultPtr QmakeProFile::evaluate(const QmakeEvalInput &input) if (result->state == QmakeEvalResult::EvalOk) { if (result->projectType == ProjectType::SubDirsTemplate) { QStringList errors; - FilePaths subDirs = subDirsPaths(input.readerExact, input.projectDir, &result->subProjectsNotToDeploy, &errors); + const FilePaths subDirs = subDirsPaths(input.readerExact, input.projectDir, + &result->subProjectsNotToDeploy, &errors); result->errors.append(errors); - foreach (const FilePath &subDirName, subDirs) { + for (const FilePath &subDirName : subDirs) { auto subDir = new QmakeIncludedPriFile; subDir->proFile = nullptr; subDir->name = subDirName; @@ -1416,8 +1415,8 @@ QmakeEvalResultPtr QmakeProFile::evaluate(const QmakeEvalInput &input) QmakeIncludedPriFile *current = toBuild.takeFirst(); if (!current->proFile) continue; // Don't attempt to map subdirs here - QVector<ProFile *> children = includeFiles.value(current->proFile); - foreach (ProFile *child, children) { + const QVector<ProFile *> children = includeFiles.value(current->proFile); + for (ProFile *child : children) { const FilePath childName = FilePath::fromString(child->fileName()); auto it = current->children.find(childName); if (it == current->children.end()) { @@ -1452,8 +1451,8 @@ QmakeEvalResultPtr QmakeProFile::evaluate(const QmakeEvalInput &input) QmakeIncludedPriFile *current = toBuild.takeFirst(); if (!current->proFile) continue; // Don't attempt to map subdirs here - QVector<ProFile *> children = includeFiles.value(current->proFile); - foreach (ProFile *child, children) { + const QVector<ProFile *> children = includeFiles.value(current->proFile); + for (ProFile *child : children) { const FilePath childName = FilePath::fromString(child->fileName()); auto it = current->children.find(childName); if (it == current->children.end()) { @@ -1481,7 +1480,7 @@ QmakeEvalResultPtr QmakeProFile::evaluate(const QmakeEvalInput &input) for (int i = 0; i < static_cast<int>(FileType::FileTypeSize); ++i) { const auto type = static_cast<FileType>(i); const QStringList qmakeVariables = varNames(type, exactReader); - foreach (const QString &qmakeVariable, qmakeVariables) { + for (const QString &qmakeVariable : qmakeVariables) { QHash<ProString, bool> handled; if (result->state == QmakeEvalResult::EvalOk) { const QStringList vPathsExact = fullVPaths( @@ -1645,7 +1644,7 @@ void QmakeProFile::applyEvaluate(const QmakeEvalResultPtr &result) return; } - foreach (const QString &error, result->errors) + for (const QString &error : qAsConst(result->errors)) QmakeBuildSystem::proFileParseError(error, filePath()); // we are changing what is executed in that case @@ -1673,7 +1672,7 @@ void QmakeProFile::applyEvaluate(const QmakeEvalResultPtr &result) if (result->projectType != m_projectType) { // probably all subfiles/projects have changed anyway // delete files && folders && projects - foreach (QmakePriFile *c, children()) { + for (QmakePriFile *c : children()) { if (auto qmakeProFile = dynamic_cast<QmakeProFile *>(c)) { qmakeProFile->setValidParseRecursive(false); qmakeProFile->setParseInProgressRecursive(false); @@ -1815,7 +1814,8 @@ QStringList QmakeProFile::includePaths(QtSupport::ProFileReader *reader, const F { QStringList paths; bool nextIsAnIncludePath = false; - foreach (const QString &cxxflags, reader->values(QLatin1String("QMAKE_CXXFLAGS"))) { + const QStringList flagList = reader->values(QLatin1String("QMAKE_CXXFLAGS")); + for (const QString &cxxflags : flagList) { if (nextIsAnIncludePath) { nextIsAnIncludePath = false; paths.append(cxxflags); @@ -1833,9 +1833,9 @@ QStringList QmakeProFile::includePaths(QtSupport::ProFileReader *reader, const F const QString mocDir = mocDirPath(reader, buildDir); const QString uiDir = uiDirPath(reader, buildDir); - foreach (const ProFileEvaluator::SourceFile &el, - reader->fixifiedValues(QLatin1String("INCLUDEPATH"), projectDir, buildDir.toString(), - false)) { + const QVector<ProFileEvaluator::SourceFile> elList = reader->fixifiedValues( + QLatin1String("INCLUDEPATH"), projectDir, buildDir.toString(), false); + for (const ProFileEvaluator::SourceFile &el : elList) { const QString sysrootifiedPath = sysrootify(el.fileName, sysroot.toString(), projectDir, buildDir.toString()); if (IoUtils::isAbsolutePath(sysrootifiedPath) @@ -1866,7 +1866,8 @@ QStringList QmakeProFile::includePaths(QtSupport::ProFileReader *reader, const F QStringList QmakeProFile::libDirectories(QtSupport::ProFileReader *reader) { QStringList result; - foreach (const QString &str, reader->values(QLatin1String("LIBS"))) { + const QStringList values = reader->values(QLatin1String("LIBS")); + for (const QString &str : values) { if (str.startsWith(QLatin1String("-L"))) result.append(str.mid(2)); } @@ -1881,8 +1882,7 @@ FilePaths QmakeProFile::subDirsPaths(QtSupport::ProFileReader *reader, FilePaths subProjectPaths; const QStringList subDirVars = reader->values(QLatin1String("SUBDIRS")); - - foreach (const QString &subDirVar, subDirVars) { + for (const QString &subDirVar : subDirVars) { // Special case were subdir is just an identifier: // "SUBDIR = subid // subid.subdir = realdir" @@ -1981,7 +1981,7 @@ InstallsList QmakeProFile::installsList(const QtSupport::ProFileReader *reader, reader->propertyValue(installPrefix + "/dev")}); } - foreach (const QString &item, itemList) { + for (const QString &item : itemList) { const QStringList config = reader->values(item + ".CONFIG"); const bool active = !config.contains("no_default_install"); const bool executable = config.contains("executable"); diff --git a/src/plugins/qmakeprojectmanager/qmakeparsernodes.h b/src/plugins/qmakeprojectmanager/qmakeparsernodes.h index c723504246f..d481dda64ce 100644 --- a/src/plugins/qmakeprojectmanager/qmakeparsernodes.h +++ b/src/plugins/qmakeprojectmanager/qmakeparsernodes.h @@ -119,7 +119,7 @@ public: QmakePriFile *parent() const; QmakeProject *project() const; - QVector<QmakePriFile *> children() const; + const QVector<QmakePriFile *> children() const; QmakePriFile *findPriFile(const Utils::FilePath &fileName); const QmakePriFile *findPriFile(const Utils::FilePath &fileName) const; diff --git a/src/plugins/qmakeprojectmanager/qmakeproject.cpp b/src/plugins/qmakeprojectmanager/qmakeproject.cpp index 43d36b2e225..ac886ee1797 100644 --- a/src/plugins/qmakeprojectmanager/qmakeproject.cpp +++ b/src/plugins/qmakeprojectmanager/qmakeproject.cpp @@ -175,8 +175,8 @@ Project::RestoreResult QmakeProject::fromMap(const QVariantMap &map, QString *er // Prune targets without buildconfigurations: // This can happen esp. when updating from a old version of Qt Creator - QList<Target *>ts = targets(); - foreach (Target *t, ts) { + const QList<Target *> ts = targets(); + for (Target *t : ts) { if (t->buildConfigurations().isEmpty()) { qWarning() << "Removing" << t->id().name() << "since it has no buildconfigurations!"; removeTarget(t); @@ -366,7 +366,8 @@ void QmakeBuildSystem::updateCppCodeModel() // Header paths ProjectExplorer::HeaderPaths headerPaths; - foreach (const QString &inc, pro->variableValue(Variable::IncludePath)) { + const QStringList includes = pro->variableValue(Variable::IncludePath); + for (const QString &inc : includes) { const auto headerPath = HeaderPath::makeUser(inc); if (!headerPaths.contains(headerPath)) headerPaths += headerPath; @@ -379,8 +380,8 @@ void QmakeBuildSystem::updateCppCodeModel() // Files and generators const QStringList cumulativeSourceFiles = pro->variableValue(Variable::CumulativeSource); QStringList fileList = pro->variableValue(Variable::ExactSource) + cumulativeSourceFiles; - QList<ProjectExplorer::ExtraCompiler *> proGenerators = pro->extraCompilers(); - foreach (ProjectExplorer::ExtraCompiler *ec, proGenerators) { + const QList<ProjectExplorer::ExtraCompiler *> proGenerators = pro->extraCompilers(); + for (ProjectExplorer::ExtraCompiler *ec : proGenerators) { ec->forEachTarget([&](const FilePath &generatedFile) { fileList += generatedFile.toString(); }); @@ -717,7 +718,7 @@ void QmakeBuildSystem::asyncUpdate() project()->updateExtraProjectFiles(docUpdater); rootProFile()->asyncUpdate(); } else { - foreach (QmakeProFile *file, m_partialEvaluate) + for (QmakeProFile *file : qAsConst(m_partialEvaluate)) file->asyncUpdate(); } @@ -763,13 +764,17 @@ Tasks QmakeProject::projectIssues(const Kit *k) const // Find the folder that contains a file with a certain name (recurse down) static FolderNode *folderOf(FolderNode *in, const FilePath &fileName) { - foreach (FileNode *fn, in->fileNodes()) + const QList<FileNode*> fileNodeList = in->fileNodes(); + for (FileNode *fn : fileNodeList) { if (fn->filePath() == fileName) return in; - foreach (FolderNode *folder, in->folderNodes()) + } + const QList<FolderNode *> folderNodeList = in->folderNodes(); + for (FolderNode *folder : folderNodeList) { if (FolderNode *pn = folderOf(folder, fileName)) return pn; - return nullptr; + } + return {}; } // Find the QmakeProFileNode that contains a certain file. @@ -778,7 +783,8 @@ static FileNode *fileNodeOf(FolderNode *in, const FilePath &fileName) { for (FolderNode *folder = folderOf(in, fileName); folder; folder = folder->parentFolderNode()) { if (auto *proFile = dynamic_cast<QmakeProFileNode *>(folder)) { - foreach (FileNode *fileNode, proFile->fileNodes()) { + const QList<FileNode*> fileNodeList = proFile->fileNodes(); + for (FileNode *fileNode : fileNodeList) { if (fileNode->filePath() == fileName) return fileNode; } @@ -972,8 +978,8 @@ QSet<QString> CentralizedFolderWatcher::recursiveDirs(const QString &folder) { QSet<QString> result; QDir dir(folder); - QStringList list = dir.entryList(QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot); - foreach (const QString &f, list) { + const QStringList list = dir.entryList(QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot); + for (const QString &f : list) { const QString a = folder + f + QLatin1Char('/'); result.insert(a); result += recursiveDirs(a); @@ -986,7 +992,7 @@ void CentralizedFolderWatcher::watchFolders(const QList<QString> &folders, Qmake m_watcher.addPaths(folders); const QChar slash = QLatin1Char('/'); - foreach (const QString &f, folders) { + for (const QString &f : folders) { QString folder = f; if (!folder.endsWith(slash)) folder.append(slash); @@ -1004,7 +1010,7 @@ void CentralizedFolderWatcher::watchFolders(const QList<QString> &folders, Qmake void CentralizedFolderWatcher::unwatchFolders(const QList<QString> &folders, QmakePriFile *file) { const QChar slash = QLatin1Char('/'); - foreach (const QString &f, folders) { + for (const QString &f : folders) { QString folder = f; if (!folder.endsWith(slash)) folder.append(slash); @@ -1018,7 +1024,7 @@ void CentralizedFolderWatcher::unwatchFolders(const QList<QString> &folders, Qma // where a given directory watcher actual comes from... QStringList toRemove; - foreach (const QString &rwf, m_recursiveWatchedFolders) { + for (const QString &rwf : qAsConst(m_recursiveWatchedFolders)) { if (rwf.startsWith(folder)) { // So the rwf is a subdirectory of a folder we aren't watching // but maybe someone else wants us to watch @@ -1037,7 +1043,7 @@ void CentralizedFolderWatcher::unwatchFolders(const QList<QString> &folders, Qma } } - foreach (const QString &tr, toRemove) + for (const QString &tr : qAsConst(toRemove)) m_recursiveWatchedFolders.remove(tr); } } @@ -1050,7 +1056,7 @@ void CentralizedFolderWatcher::folderChanged(const QString &folder) void CentralizedFolderWatcher::onTimer() { - foreach (const QString &folder, m_changedFolders) + for (const QString &folder : qAsConst(m_changedFolders)) delayedFolderChanged(folder); m_changedFolders.clear(); } @@ -1064,12 +1070,12 @@ void CentralizedFolderWatcher::delayedFolderChanged(const QString &folder) while (true) { if (!dir.endsWith(slash)) dir.append(slash); - QList<QmakePriFile *> files = m_map.values(dir); + const QList<QmakePriFile *> files = m_map.values(dir); if (!files.isEmpty()) { // Collect all the files QSet<FilePath> newFiles; newFiles += QmakePriFile::recursiveEnumerate(folder); - foreach (QmakePriFile *file, files) + for (QmakePriFile *file : files) newOrRemovedFiles = newOrRemovedFiles || file->folderChanged(folder, newFiles); } diff --git a/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp b/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp index 666ede66d65..d0041571db0 100644 --- a/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp +++ b/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp @@ -87,10 +87,10 @@ QList<void *> QmakeProjectImporter::examineDirectory(const FilePath &importPath, QList<void *> result; const QLoggingCategory &logs = MakeFileParse::logging(); - QStringList makefiles = QDir(importPath.toString()).entryList(QStringList(QLatin1String("Makefile*"))); + const QStringList makefiles = QDir(importPath.toString()).entryList(QStringList(("Makefile*"))); qCDebug(logs) << " Makefiles:" << makefiles; - foreach (const QString &file, makefiles) { + for (const QString &file : makefiles) { std::unique_ptr<DirectoryData> data(new DirectoryData); data->makefile = file; data->buildDirectory = importPath; |