diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2020-03-03 03:01:34 +0100 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2020-03-03 03:01:34 +0100 |
commit | 28811dad02f18a3dc0eeae9d91cd4819780626ee (patch) | |
tree | 7ced78142ce3f8815df7082f25a83048dd0d855f | |
parent | 94c0fd2b718332f9307b6de4e3863540612aed54 (diff) | |
parent | 782a097d8950dca2620a8952856864ede62b0b59 (diff) |
Merge remote-tracking branch 'origin/5.15' into dev
Change-Id: Iff33dc736e4844af2c1c8e227ef1145d77fc1d85
34 files changed, 114 insertions, 83 deletions
diff --git a/src/assistant/assistant/centralwidget.cpp b/src/assistant/assistant/centralwidget.cpp index 7136a8909..bac8f6fc8 100644 --- a/src/assistant/assistant/centralwidget.cpp +++ b/src/assistant/assistant/centralwidget.cpp @@ -545,7 +545,7 @@ void CentralWidget::highlightSearchTerms() const bool wholePhrase = searchInput.startsWith(QLatin1Char('"')) && searchInput.endsWith(QLatin1Char('"')); const QStringList &words = wholePhrase ? QStringList(searchInput.mid(1, searchInput.length() - 2)) : - searchInput.split(QRegExp("\\W+"), QString::SkipEmptyParts); + searchInput.split(QRegExp("\\W+"), Qt::SkipEmptyParts); HelpViewer *viewer = currentHelpViewer(); for (const QString &word : words) viewer->findText(word, {}, false, true); diff --git a/src/assistant/help/qhelpfiltersettingswidget.cpp b/src/assistant/help/qhelpfiltersettingswidget.cpp index 51c66c269..660420f1b 100644 --- a/src/assistant/help/qhelpfiltersettingswidget.cpp +++ b/src/assistant/help/qhelpfiltersettingswidget.cpp @@ -174,10 +174,8 @@ void QHelpFilterSettingsWidgetPrivate::versionsChanged(const QStringList &versio void QHelpFilterSettingsWidgetPrivate::addFilterClicked() { - Q_Q(QHelpFilterSettingsWidget); - - const QString newFilterName = getUniqueFilterName(q->tr("Add Filter"), - suggestedNewFilterName(q->tr("New Filter"))); + const QString newFilterName = getUniqueFilterName(QHelpFilterSettingsWidget::tr("Add Filter"), + suggestedNewFilterName(QHelpFilterSettingsWidget::tr("New Filter"))); if (newFilterName.isEmpty()) return; @@ -186,13 +184,11 @@ void QHelpFilterSettingsWidgetPrivate::addFilterClicked() void QHelpFilterSettingsWidgetPrivate::renameFilterClicked() { - Q_Q(QHelpFilterSettingsWidget); - const QString ¤tFilter = m_itemToFilter.value(m_ui.filterWidget->currentItem()); if (currentFilter.isEmpty()) return; - const QString newFilterName = getUniqueFilterName(q->tr("Rename Filter"), currentFilter); + const QString newFilterName = getUniqueFilterName(QHelpFilterSettingsWidget::tr("Rename Filter"), currentFilter); if (newFilterName.isEmpty()) return; @@ -212,8 +208,8 @@ void QHelpFilterSettingsWidgetPrivate::removeFilterClicked() if (currentFilter.isEmpty()) return; - if (QMessageBox::question(q, q->tr("Remove Filter"), - q->tr("Are you sure you want to remove the \"%1\" filter?") + if (QMessageBox::question(q, QHelpFilterSettingsWidget::tr("Remove Filter"), + QHelpFilterSettingsWidget::tr("Are you sure you want to remove the \"%1\" filter?") .arg(currentFilter), QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) { @@ -266,8 +262,8 @@ QString QHelpFilterSettingsWidgetPrivate::getUniqueFilterName(const QString &win if (!m_filterToItem.contains(newFilterName)) break; - if (QMessageBox::warning(q, q->tr("Filter Exists"), - q->tr("The filter \"%1\" already exists.") + if (QMessageBox::warning(q, QHelpFilterSettingsWidget::tr("Filter Exists"), + QHelpFilterSettingsWidget::tr("The filter \"%1\" already exists.") .arg(newFilterName), QMessageBox::Retry | QMessageBox::Cancel) == QMessageBox::Cancel) { diff --git a/src/assistant/help/qhelpsearchquerywidget.cpp b/src/assistant/help/qhelpsearchquerywidget.cpp index 61902656d..183e317aa 100644 --- a/src/assistant/help/qhelpsearchquerywidget.cpp +++ b/src/assistant/help/qhelpsearchquerywidget.cpp @@ -302,7 +302,7 @@ void QHelpSearchQueryWidget::collapseExtendedSearch() QList<QHelpSearchQuery> QHelpSearchQueryWidget::query() const { return QList<QHelpSearchQuery>() << QHelpSearchQuery(QHelpSearchQuery::DEFAULT, - searchInput().split(QChar::Space, QString::SkipEmptyParts)); + searchInput().split(QChar::Space, Qt::SkipEmptyParts)); } /*! diff --git a/src/assistant/shared/collectionconfiguration.cpp b/src/assistant/shared/collectionconfiguration.cpp index a1b63c9bd..562cbfaab 100644 --- a/src/assistant/shared/collectionconfiguration.cpp +++ b/src/assistant/shared/collectionconfiguration.cpp @@ -239,7 +239,7 @@ void CollectionConfiguration::setDefaultHomePage(QHelpEngineCore &helpEngine, const QStringList CollectionConfiguration::lastShownPages(const QHelpEngineCore &helpEngine) { return helpEngine.customValue(LastShownPagesKey).toString(). - split(ListSeparator, QString::SkipEmptyParts); + split(ListSeparator, Qt::SkipEmptyParts); } void CollectionConfiguration::setLastShownPages(QHelpEngineCore &helpEngine, @@ -252,7 +252,7 @@ void CollectionConfiguration::setLastShownPages(QHelpEngineCore &helpEngine, const QStringList CollectionConfiguration::lastZoomFactors(const QHelpEngineCore &helpEngine) { return helpEngine.customValue(LastZoomFactorsKey).toString(). - split(ListSeparator, QString::SkipEmptyParts); + split(ListSeparator, Qt::SkipEmptyParts); } void CollectionConfiguration::setLastZoomFactors(QHelpEngineCore &helpEngine, diff --git a/src/linguist/linguist/messageeditorwidgets.cpp b/src/linguist/linguist/messageeditorwidgets.cpp index 6c16b36fd..bb0eb5baf 100644 --- a/src/linguist/linguist/messageeditorwidgets.cpp +++ b/src/linguist/linguist/messageeditorwidgets.cpp @@ -372,7 +372,7 @@ void FormMultiWidget::slotSelectionChanged() void FormMultiWidget::setTranslation(const QString &text, bool userAction) { - QStringList texts = text.split(QChar(Translator::BinaryVariantSeparator), QString::KeepEmptyParts); + QStringList texts = text.split(QChar(Translator::BinaryVariantSeparator), Qt::KeepEmptyParts); while (m_editors.count() > texts.count()) { delete m_minusButtons.takeLast(); diff --git a/src/linguist/lupdate/main.cpp b/src/linguist/lupdate/main.cpp index 6c4e3db9c..3a3ff76a8 100644 --- a/src/linguist/lupdate/main.cpp +++ b/src/linguist/lupdate/main.cpp @@ -299,7 +299,7 @@ static void printUsage() static bool handleTrFunctionAliases(const QString &arg) { - foreach (const QString &pair, arg.split(QLatin1Char(','), QString::SkipEmptyParts)) { + foreach (const QString &pair, arg.split(QLatin1Char(','), Qt::SkipEmptyParts)) { const int equalSign = pair.indexOf(QLatin1Char('=')); if (equalSign < 0) { printErr(LU::tr("tr-function mapping '%1' in -tr-function-alias is missing the '='.\n").arg(pair)); diff --git a/src/linguist/lupdate/qdeclarative.cpp b/src/linguist/lupdate/qdeclarative.cpp index 7a453aa32..7d995ae86 100644 --- a/src/linguist/lupdate/qdeclarative.cpp +++ b/src/linguist/lupdate/qdeclarative.cpp @@ -39,6 +39,7 @@ #include <private/qqmljslexer_p.h> #include <private/qqmljsastvisitor_p.h> #include <private/qqmljsast_p.h> +#include <private/qqmlapiversion_p.h> #include <QCoreApplication> #include <QFile> @@ -52,6 +53,12 @@ QT_BEGIN_NAMESPACE +#if Q_QML_PRIVATE_API_VERSION < 8 +namespace QQmlJS { + using SourceLocation = AST::SourceLocation; +} +#endif + using namespace QQmlJS; static QString MagicComment(QLatin1String("TRANSLATOR")); @@ -229,7 +236,7 @@ private: void processComments(quint32 offset, bool flush = false); - void processComment(const AST::SourceLocation &loc); + void processComment(const SourceLocation &loc); void consumeComment(); bool createString(AST::ExpressionNode *ast, QString *out) @@ -259,7 +266,7 @@ private: TranslatorMessage::ExtraData extra; QString sourcetext; QString trcontext; - QList<AST::SourceLocation> m_todo; + QList<SourceLocation> m_todo; }; QString createErrorString(const QString &filename, const QString &code, Parser &parser) @@ -274,7 +281,7 @@ QString createErrorString(const QString &filename, const QString &code, Parser & if (m.isWarning()) continue; -#if Q_QML_PRIVATE_API_VERSION < 5 +#if Q_QML_PRIVATE_API_VERSION >= 8 const int line = m.loc.startLine; const int column = m.loc.startColumn; #else @@ -315,7 +322,7 @@ void FindTrCalls::postVisit(AST::Node *node) void FindTrCalls::processComments(quint32 offset, bool flush) { for (; !m_todo.isEmpty(); m_todo.removeFirst()) { - AST::SourceLocation loc = m_todo.first(); + SourceLocation loc = m_todo.first(); if (! flush && (loc.begin() >= offset)) break; @@ -332,7 +339,7 @@ void FindTrCalls::consumeComment() sourcetext.clear(); } -void FindTrCalls::processComment(const AST::SourceLocation &loc) +void FindTrCalls::processComment(const SourceLocation &loc) { if (!loc.length) return; diff --git a/src/linguist/shared/po.cpp b/src/linguist/shared/po.cpp index 19ba12b96..69062b772 100644 --- a/src/linguist/shared/po.cpp +++ b/src/linguist/shared/po.cpp @@ -548,7 +548,7 @@ bool loadPO(Translator &translator, QIODevice &dev, ConversionData &cd) QString xrefs; foreach (const QString &ref, codec->toUnicode(item.references).split( - QRegExp(QLatin1String("\\s")), QString::SkipEmptyParts)) { + QRegExp(QLatin1String("\\s")), Qt::SkipEmptyParts)) { int pos = ref.indexOf(QLatin1Char(':')); int lpos = ref.lastIndexOf(QLatin1Char(':')); if (pos != -1 && pos == lpos) { @@ -607,7 +607,7 @@ bool loadPO(Translator &translator, QIODevice &dev, ConversionData &cd) case ',': { QStringList flags = QString::fromLatin1(line.mid(2)).split( - QRegExp(QLatin1String("[, ]")), QString::SkipEmptyParts); + QRegExp(QLatin1String("[, ]")), Qt::SkipEmptyParts); if (flags.removeOne(QLatin1String("fuzzy"))) item.isFuzzy = true; flags.removeOne(QLatin1String("qt-format")); @@ -750,7 +750,7 @@ bool savePO(const Translator &translator, QIODevice &dev, ConversionData &) out << "msgid \"\"\n"; Translator::ExtraData headers = translator.extras(); QStringList hdrOrder = translator.extra(QLatin1String("po-headers")).split( - QLatin1Char(','), QString::SkipEmptyParts); + QLatin1Char(','), Qt::SkipEmptyParts); // Keep in sync with loadPO addPoHeader(headers, hdrOrder, "MIME-Version", QLatin1String("1.0")); addPoHeader(headers, hdrOrder, "Content-Type", diff --git a/src/linguist/shared/qmakebuiltins.cpp b/src/linguist/shared/qmakebuiltins.cpp index 92366b9f7..180c1fa7a 100644 --- a/src/linguist/shared/qmakebuiltins.cpp +++ b/src/linguist/shared/qmakebuiltins.cpp @@ -768,7 +768,7 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::evaluateBuiltinExpand( const auto vars = values(map(args.at(0))); for (const ProString &var : vars) { // FIXME: this is inconsistent with the "there are no empty strings" dogma. - const auto splits = var.toQStringRef().split(sep, QString::KeepEmptyParts); + const auto splits = var.toQStringRef().split(sep, Qt::KeepEmptyParts); for (const auto &splt : splits) ret << ProString(splt).setSource(var); } @@ -1538,7 +1538,7 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::evaluateBuiltinConditional( if (args.count() == 1) return returnBool(isActiveConfig(args.at(0).toQStringRef())); const auto &mutuals = args.at(1).toQStringRef().split(QLatin1Char('|'), - QString::SkipEmptyParts); + Qt::SkipEmptyParts); const ProStringList &configs = values(statics.strCONFIG); for (int i = configs.size() - 1; i >= 0; i--) { @@ -1572,7 +1572,7 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::evaluateBuiltinConditional( } } else { const auto mutuals = args.at(2).toQStringRef().split(QLatin1Char('|'), - QString::SkipEmptyParts); + Qt::SkipEmptyParts); for (int i = l.size() - 1; i >= 0; i--) { const ProString &val = l[i]; for (int mut = 0; mut < mutuals.count(); mut++) { diff --git a/src/linguist/shared/qmakeevaluator.cpp b/src/linguist/shared/qmakeevaluator.cpp index 639114d20..9e3fbf3e0 100644 --- a/src/linguist/shared/qmakeevaluator.cpp +++ b/src/linguist/shared/qmakeevaluator.cpp @@ -883,7 +883,7 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::visitProVariable( return ReturnTrue; } QChar sep = val.at(1); - auto func = val.split(sep, QString::KeepEmptyParts); + auto func = val.split(sep, Qt::KeepEmptyParts); if (func.count() < 3 || func.count() > 4) { evalError(fL1S("The s/// function expects 3 or 4 arguments.")); return ReturnTrue; @@ -1022,7 +1022,7 @@ static ProString msvcArchitecture(const QString &vcInstallDir, const QString &pa QString vcBinDir = vcInstallDir; if (vcBinDir.endsWith(QLatin1Char('\\'))) vcBinDir.chop(1); - const auto dirs = pathVar.split(QLatin1Char(';'), QString::SkipEmptyParts); + const auto dirs = pathVar.split(QLatin1Char(';'), Qt::SkipEmptyParts); for (const QString &dir : dirs) { if (!dir.startsWith(vcBinDir, Qt::CaseInsensitive)) continue; diff --git a/src/linguist/shared/qmakeglobals.cpp b/src/linguist/shared/qmakeglobals.cpp index 6ba7abf28..0a58e9e29 100644 --- a/src/linguist/shared/qmakeglobals.cpp +++ b/src/linguist/shared/qmakeglobals.cpp @@ -261,7 +261,7 @@ QStringList QMakeGlobals::splitPathList(const QString &val) const QStringList ret; if (!val.isEmpty()) { QString cwd(QDir::currentPath()); - const QStringList vals = val.split(dirlist_sep, QString::SkipEmptyParts); + const QStringList vals = val.split(dirlist_sep, Qt::SkipEmptyParts); ret.reserve(vals.length()); for (const QString &it : vals) ret << IoUtils::resolvePath(cwd, it); diff --git a/src/macdeployqt/shared/shared.cpp b/src/macdeployqt/shared/shared.cpp index b308a6007..eb2314bfc 100644 --- a/src/macdeployqt/shared/shared.cpp +++ b/src/macdeployqt/shared/shared.cpp @@ -185,7 +185,7 @@ OtoolInfo findDependencyInfo(const QString &binaryPath) "current version (\\d+\\.\\d+\\.\\d+)\\)$")); QString output = otool.readAllStandardOutput(); - QStringList outputLines = output.split("\n", QString::SkipEmptyParts); + QStringList outputLines = output.split("\n", Qt::SkipEmptyParts); if (outputLines.size() < 2) { LogError() << "Could not parse otool output:" << output; return info; diff --git a/src/qdbus/qdbusviewer/qdbusmodel.cpp b/src/qdbus/qdbusviewer/qdbusmodel.cpp index 79239b264..1e1e4f9fc 100644 --- a/src/qdbus/qdbusviewer/qdbusmodel.cpp +++ b/src/qdbus/qdbusviewer/qdbusmodel.cpp @@ -305,7 +305,7 @@ QString QDBusModel::dBusTypeSignature(const QModelIndex &index) const QModelIndex QDBusModel::findObject(const QDBusObjectPath &objectPath) { - QStringList path = objectPath.path().split(QLatin1Char('/'), QString::SkipEmptyParts); + QStringList path = objectPath.path().split(QLatin1Char('/'), Qt::SkipEmptyParts); QDBusItem *item = root; int childIdx = -1; diff --git a/src/qdoc/clangcodeparser.cpp b/src/qdoc/clangcodeparser.cpp index 6a4a77d7c..3c8fe78d1 100644 --- a/src/qdoc/clangcodeparser.cpp +++ b/src/qdoc/clangcodeparser.cpp @@ -692,7 +692,7 @@ CXChildVisitResult ClangVisitor::visitHeader(CXCursor cursor, CXSourceLocation l if (baseNode == nullptr || !baseNode->isClassNode()) { QString bcName = reconstructQualifiedPathForCursor(baseCursor); classe->addUnresolvedBaseClass( - access, bcName.split(QLatin1String("::"), QString::SkipEmptyParts), bcName); + access, bcName.split(QLatin1String("::"), Qt::SkipEmptyParts), bcName); return CXChildVisit_Continue; } auto baseClasse = static_cast<ClassNode *>(baseNode); diff --git a/src/qdoc/doc.cpp b/src/qdoc/doc.cpp index d6dc2871e..5b52e9e1a 100644 --- a/src/qdoc/doc.cpp +++ b/src/qdoc/doc.cpp @@ -1325,6 +1325,12 @@ void DocParser::parse(const QString &source, DocPrivate *docPrivate, case NOT_A_CMD: if (metaCommandSet.contains(cmdStr)) { priv->metacommandsUsed.insert(cmdStr); + // Force a linebreak after \obsolete or \deprecated + // to treat potential arguments as a new text paragraph. + if (pos < len && + (cmdStr == QLatin1String("obsolete") || + cmdStr == QLatin1String("deprecated"))) + input_[pos] = '\n'; QString arg = getMetaCommandArgument(cmdStr); priv->metaCommandMap[cmdStr].append(ArgLocPair(arg, location())); if (possibleTopics.contains(cmdStr)) { @@ -1814,7 +1820,7 @@ void DocParser::parseAlso() if (input_[pos] == '{') { target = getArgument(); skipSpacesOnLine(); - if (input_[pos] == '{') { + if (pos < len && input_[pos] == '{') { str = getArgument(); // hack for C++ to support links like \l{QString::}{count()} @@ -1841,7 +1847,7 @@ void DocParser::parseAlso() if (pos < len && input_[pos] == ',') { pos++; skipSpacesOrOneEndl(); - } else if (input_[pos] != '\n') { + } else if (pos >= len || input_[pos] != '\n') { location().warning(tr("Missing comma in '\\%1'").arg(cmdName(CMD_SA))); } } @@ -2433,7 +2439,7 @@ QString DocParser::getCode(int cmd, CodeMarker *marker, const QString &argStr) QString code = untabifyEtc(getUntilEnd(cmd)); if (!argStr.isEmpty()) { - QStringList args = argStr.split(" ", QString::SkipEmptyParts); + QStringList args = argStr.split(" ", Qt::SkipEmptyParts); int paramNo, j = 0; while (j < code.size()) { if (code[j] == '\\' && j < code.size() - 1 && (paramNo = code[j + 1].digitValue()) >= 1 diff --git a/src/qdoc/doc/qdoc-manual-contextcmds.qdoc b/src/qdoc/doc/qdoc-manual-contextcmds.qdoc index d3cf23b76..f020035d3 100644 --- a/src/qdoc/doc/qdoc-manual-contextcmds.qdoc +++ b/src/qdoc/doc/qdoc-manual-contextcmds.qdoc @@ -262,7 +262,7 @@ deprecated, and it should no longer be used in new code. There is no guarantee for how long it will remain in the library. - The command must stand on its own line. + The \\obsolete command takes no arguments. When generating the reference documentation for a class, QDoc will create and link to a separate page documenting its obsolete diff --git a/src/qdoc/jscodemarker.cpp b/src/qdoc/jscodemarker.cpp index d9ac99d6d..b3c675d5b 100644 --- a/src/qdoc/jscodemarker.cpp +++ b/src/qdoc/jscodemarker.cpp @@ -63,7 +63,7 @@ bool JsCodeMarker::recognizeCode(const QString &code) QQmlJS::Parser parser(&engine); QString newCode = code; - QVector<QQmlJS::AST::SourceLocation> pragmas = extractPragmas(newCode); + QVector<QQmlJS::SourceLocation> pragmas = extractPragmas(newCode); lexer.setCode(newCode, 1); return parser.parseProgram(); @@ -112,7 +112,7 @@ QString JsCodeMarker::addMarkUp(const QString &code, const Node * /* relative */ QQmlJS::Lexer lexer(&engine); QString newCode = code; - QVector<QQmlJS::AST::SourceLocation> pragmas = extractPragmas(newCode); + QVector<QQmlJS::SourceLocation> pragmas = extractPragmas(newCode); lexer.setCode(newCode, 1); QQmlJS::Parser parser(&engine); diff --git a/src/qdoc/qmlcodemarker.cpp b/src/qdoc/qmlcodemarker.cpp index 4ecfb6475..08c9b11ed 100644 --- a/src/qdoc/qmlcodemarker.cpp +++ b/src/qdoc/qmlcodemarker.cpp @@ -164,7 +164,7 @@ QString QmlCodeMarker::addMarkUp(const QString &code, const Node * /* relative * QQmlJS::Lexer lexer(&engine); QString newCode = code; - QVector<QQmlJS::AST::SourceLocation> pragmas = extractPragmas(newCode); + QVector<QQmlJS::SourceLocation> pragmas = extractPragmas(newCode); lexer.setCode(newCode, 1); QQmlJS::Parser parser(&engine); @@ -217,11 +217,11 @@ static void replaceWithSpace(QString &str, int idx, int n) Searches for ".pragma <value>" or ".import <stuff>" declarations in \a script. Currently supported pragmas are: library */ -QVector<QQmlJS::AST::SourceLocation> QmlCodeMarker::extractPragmas(QString &script) +QVector<QQmlJS::SourceLocation> QmlCodeMarker::extractPragmas(QString &script) { const QString pragma(QLatin1String("pragma")); const QString library(QLatin1String("library")); - QVector<QQmlJS::AST::SourceLocation> removed; + QVector<QQmlJS::SourceLocation> removed; QQmlJS::Lexer l(nullptr); l.setCode(script, 0); @@ -246,7 +246,7 @@ QVector<QQmlJS::AST::SourceLocation> QmlCodeMarker::extractPragmas(QString &scri token = l.lex(); } replaceWithSpace(script, startOffset, endOffset - startOffset); - removed.append(QQmlJS::AST::SourceLocation(startOffset, endOffset - startOffset, startLine, + removed.append(QQmlJS::SourceLocation(startOffset, endOffset - startOffset, startLine, startColumn)); } return removed; diff --git a/src/qdoc/qmlcodemarker.h b/src/qdoc/qmlcodemarker.h index c3435e840..67b1a9be7 100644 --- a/src/qdoc/qmlcodemarker.h +++ b/src/qdoc/qmlcodemarker.h @@ -41,6 +41,15 @@ QT_BEGIN_NAMESPACE +#ifndef QT_NO_DECLARATIVE +# include <private/qqmlapiversion_p.h> +# if Q_QML_PRIVATE_API_VERSION < 8 +namespace QQmlJS { + using SourceLocation = AST::SourceLocation; +} +# endif +#endif + class QmlCodeMarker : public CppCodeMarker { Q_DECLARE_TR_FUNCTIONS(QDoc::QmlCodeMarker) @@ -64,7 +73,7 @@ public: /* Copied from src/declarative/qml/qdeclarativescriptparser.cpp */ #ifndef QT_NO_DECLARATIVE - QVector<QQmlJS::AST::SourceLocation> extractPragmas(QString &script); + QVector<QQmlJS::SourceLocation> extractPragmas(QString &script); #endif private: diff --git a/src/qdoc/qmlcodeparser.cpp b/src/qdoc/qmlcodeparser.cpp index e161b9cfc..a0a6bc5f0 100644 --- a/src/qdoc/qmlcodeparser.cpp +++ b/src/qdoc/qmlcodeparser.cpp @@ -141,7 +141,7 @@ void QmlCodeParser::parseSourceFile(const Location &location, const QString &fil const auto &messages = parser->diagnosticMessages(); for (const auto &msg : messages) { qDebug().nospace() << qPrintable(filePath) << ':' -# if Q_QML_PRIVATE_API_VERSION < 5 +# if Q_QML_PRIVATE_API_VERSION >= 8 << msg.loc.startLine << ": QML syntax error at col " << msg.loc.startColumn # else diff --git a/src/qdoc/qmlmarkupvisitor.cpp b/src/qdoc/qmlmarkupvisitor.cpp index d7b95fae7..78f48753a 100644 --- a/src/qdoc/qmlmarkupvisitor.cpp +++ b/src/qdoc/qmlmarkupvisitor.cpp @@ -41,7 +41,7 @@ QT_BEGIN_NAMESPACE #ifndef QT_NO_DECLARATIVE QmlMarkupVisitor::QmlMarkupVisitor(const QString &source, - const QVector<QQmlJS::AST::SourceLocation> &pragmas, + const QVector<QQmlJS::SourceLocation> &pragmas, QQmlJS::Engine *engine) { this->source = source; @@ -53,7 +53,7 @@ QmlMarkupVisitor::QmlMarkupVisitor(const QString &source, // Merge the lists of locations of pragmas and comments in the source code. int i = 0; int j = 0; - const QList<QQmlJS::AST::SourceLocation> comments = engine->comments(); + const QList<QQmlJS::SourceLocation> comments = engine->comments(); while (i < comments.size() && j < pragmas.length()) { if (comments[i].offset < pragmas[j].offset) { extraTypes.append(Comment); @@ -186,7 +186,7 @@ void QmlMarkupVisitor::addExtra(quint32 start, quint32 finish) cursor = finish; } -void QmlMarkupVisitor::addMarkedUpToken(QQmlJS::AST::SourceLocation &location, +void QmlMarkupVisitor::addMarkedUpToken(QQmlJS::SourceLocation &location, const QString &tagName, const QHash<QString, QString> &attributes) { @@ -205,13 +205,13 @@ void QmlMarkupVisitor::addMarkedUpToken(QQmlJS::AST::SourceLocation &location, cursor += location.length; } -QString QmlMarkupVisitor::sourceText(QQmlJS::AST::SourceLocation &location) +QString QmlMarkupVisitor::sourceText(QQmlJS::SourceLocation &location) { return source.mid(location.offset, location.length); } -void QmlMarkupVisitor::addVerbatim(QQmlJS::AST::SourceLocation first, - QQmlJS::AST::SourceLocation last) +void QmlMarkupVisitor::addVerbatim(QQmlJS::SourceLocation first, + QQmlJS::SourceLocation last) { if (!first.isValid()) return; diff --git a/src/qdoc/qmlmarkupvisitor.h b/src/qdoc/qmlmarkupvisitor.h index c9a012ae8..53d6b4ed9 100644 --- a/src/qdoc/qmlmarkupvisitor.h +++ b/src/qdoc/qmlmarkupvisitor.h @@ -42,12 +42,20 @@ QT_BEGIN_NAMESPACE #ifndef QT_NO_DECLARATIVE +# include <private/qqmlapiversion_p.h> +# if Q_QML_PRIVATE_API_VERSION < 8 +namespace QQmlJS { + using SourceLocation = AST::SourceLocation; +} +# endif + + class QmlMarkupVisitor : public QQmlJS::AST::Visitor { public: enum ExtraType { Comment, Pragma }; - QmlMarkupVisitor(const QString &code, const QVector<QQmlJS::AST::SourceLocation> &pragmas, + QmlMarkupVisitor(const QString &code, const QVector<QQmlJS::SourceLocation> &pragmas, QQmlJS::Engine *engine); virtual ~QmlMarkupVisitor(); @@ -144,16 +152,16 @@ protected: private: typedef QHash<QString, QString> StringHash; void addExtra(quint32 start, quint32 finish); - void addMarkedUpToken(QQmlJS::AST::SourceLocation &location, const QString &text, + void addMarkedUpToken(QQmlJS::SourceLocation &location, const QString &text, const StringHash &attributes = StringHash()); - void addVerbatim(QQmlJS::AST::SourceLocation first, - QQmlJS::AST::SourceLocation last = QQmlJS::AST::SourceLocation()); - QString sourceText(QQmlJS::AST::SourceLocation &location); + void addVerbatim(QQmlJS::SourceLocation first, + QQmlJS::SourceLocation last = QQmlJS::SourceLocation()); + QString sourceText(QQmlJS::SourceLocation &location); void throwRecursionDepthError() final; QQmlJS::Engine *engine; QVector<ExtraType> extraTypes; - QVector<QQmlJS::AST::SourceLocation> extraLocations; + QVector<QQmlJS::SourceLocation> extraLocations; QString source; QString output; quint32 cursor; diff --git a/src/qdoc/qmlvisitor.cpp b/src/qdoc/qmlvisitor.cpp index 2ee362d77..aac45dd43 100644 --- a/src/qdoc/qmlvisitor.cpp +++ b/src/qdoc/qmlvisitor.cpp @@ -76,11 +76,11 @@ QmlDocVisitor::~QmlDocVisitor() /*! Returns the location of the nearest comment above the \a offset. */ -QQmlJS::AST::SourceLocation QmlDocVisitor::precedingComment(quint32 offset) const +QQmlJS::SourceLocation QmlDocVisitor::precedingComment(quint32 offset) const { const auto comments = engine->comments(); for (auto it = comments.rbegin(); it != comments.rend(); ++it) { - QQmlJS::AST::SourceLocation loc = *it; + QQmlJS::SourceLocation loc = *it; if (loc.begin() <= lastEndOffset) { // Return if we reach the end of the preceding structure. @@ -99,7 +99,7 @@ QQmlJS::AST::SourceLocation QmlDocVisitor::precedingComment(quint32 offset) cons } } - return QQmlJS::AST::SourceLocation(); + return QQmlJS::SourceLocation(); } class QmlSignatureParser @@ -134,9 +134,9 @@ private: If a qdoc comment is found for \a location, true is returned. If a comment is not found there, false is returned. */ -bool QmlDocVisitor::applyDocumentation(QQmlJS::AST::SourceLocation location, Node *node) +bool QmlDocVisitor::applyDocumentation(QQmlJS::SourceLocation location, Node *node) { - QQmlJS::AST::SourceLocation loc = precedingComment(location.begin()); + QQmlJS::SourceLocation loc = precedingComment(location.begin()); if (loc.isValid()) { QString source = document.mid(loc.offset, loc.length); @@ -419,7 +419,7 @@ bool QmlDocVisitor::splitQmlPropertyArg(const Doc &doc, const QString &arg, QmlP /*! Applies the metacommands found in the comment. */ -void QmlDocVisitor::applyMetacommands(QQmlJS::AST::SourceLocation, Node *node, Doc &doc) +void QmlDocVisitor::applyMetacommands(QQmlJS::SourceLocation, Node *node, Doc &doc) { QDocDatabase *qdb = QDocDatabase::qdocDB(); QSet<QString> metacommands = doc.metaCommandsUsed(); diff --git a/src/qdoc/qmlvisitor.h b/src/qdoc/qmlvisitor.h index 6c10c5258..c0fe51251 100644 --- a/src/qdoc/qmlvisitor.h +++ b/src/qdoc/qmlvisitor.h @@ -40,6 +40,15 @@ QT_BEGIN_NAMESPACE +#ifndef QT_NO_DECLARATIVE +# include <private/qqmlapiversion_p.h> +# if Q_QML_PRIVATE_API_VERSION < 8 +namespace QQmlJS { + using SourceLocation = AST::SourceLocation; +} +# endif +#endif + struct QmlPropArgs { QString type_; @@ -96,9 +105,9 @@ public: private: QString getFullyQualifiedId(QQmlJS::AST::UiQualifiedId *id); - QQmlJS::AST::SourceLocation precedingComment(quint32 offset) const; - bool applyDocumentation(QQmlJS::AST::SourceLocation location, Node *node); - void applyMetacommands(QQmlJS::AST::SourceLocation location, Node *node, Doc &doc); + QQmlJS::SourceLocation precedingComment(quint32 offset) const; + bool applyDocumentation(QQmlJS::SourceLocation location, Node *node); + void applyMetacommands(QQmlJS::SourceLocation location, Node *node, Doc &doc); bool splitQmlPropertyArg(const Doc &doc, const QString &arg, QmlPropArgs &qpa); QQmlJS::Engine *engine; diff --git a/src/qtattributionsscanner/scanner.cpp b/src/qtattributionsscanner/scanner.cpp index dc7b88fbf..0b4330cf0 100644 --- a/src/qtattributionsscanner/scanner.cpp +++ b/src/qtattributionsscanner/scanner.cpp @@ -103,7 +103,7 @@ static Package readPackage(const QJsonObject &object, const QString &filePath, L } else if (key == QLatin1String("Path")) { p.path = QDir(directory).absoluteFilePath(value); } else if (key == QLatin1String("Files")) { - p.files = value.split(QRegExp(QStringLiteral("\\s")), QString::SkipEmptyParts); + p.files = value.split(QRegExp(QStringLiteral("\\s")), Qt::SkipEmptyParts); } else if (key == QLatin1String("Id")) { p.id = value; } else if (key == QLatin1String("Homepage")) { diff --git a/src/windeployqt/main.cpp b/src/windeployqt/main.cpp index df0e1c35d..4a50959b5 100644 --- a/src/windeployqt/main.cpp +++ b/src/windeployqt/main.cpp @@ -1430,7 +1430,7 @@ static DeployResult deploy(const Options &options, // Check for ANGLE on the Qt6Gui library. if (options.platform.testFlag(WindowsBased) && !qtGuiLibrary.isEmpty()) { - QString libGlesName = QStringLiteral("libGLESV2"); + QString libGlesName = QStringLiteral("libGLESv2"); if (result.isDebug && platformHasDebugSuffix(options.platform)) libGlesName += QLatin1Char('d'); libGlesName += QLatin1String(windowsSharedLibrarySuffix); diff --git a/tests/auto/qdoc/generatedoutput/testdata/bug80259/inc/testmodule/TestModule.h b/tests/auto/qdoc/generatedoutput/testdata/bug80259/inc/testmodule/TestModule.h index 686cbe948..06f046a71 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/bug80259/inc/testmodule/TestModule.h +++ b/tests/auto/qdoc/generatedoutput/testdata/bug80259/inc/testmodule/TestModule.h @@ -1,3 +1,3 @@ -#include "testmodule/aaa.h" -#include "testmodule/bbb.h" -#include "testmodule/ccc.h" +#include "aaa.h" +#include "bbb.h" +#include "ccc.h" diff --git a/tests/auto/qdoc/generatedoutput/testdata/bug80259/testmodule.qdocconf b/tests/auto/qdoc/generatedoutput/testdata/bug80259/testmodule.qdocconf index c02fb6fcf..23a4b27f6 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/bug80259/testmodule.qdocconf +++ b/tests/auto/qdoc/generatedoutput/testdata/bug80259/testmodule.qdocconf @@ -2,9 +2,9 @@ project = TestModule moduleheader = TestModule.h -headerdirs = inc -sourcedirs = src -includepaths += ./bug80259/inc/testmodule +headerdirs = ./inc +sourcedirs = ./src +includepaths += ./inc/testmodule sources.fileextensions = "*.cpp *.qdoc" headers.fileextensions = "*.h" diff --git a/tests/auto/qdoc/generatedoutput/testdata/configs/testcpp.qdocconf b/tests/auto/qdoc/generatedoutput/testdata/configs/testcpp.qdocconf index 53f6071f9..80ac58475 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/configs/testcpp.qdocconf +++ b/tests/auto/qdoc/generatedoutput/testdata/configs/testcpp.qdocconf @@ -1,5 +1,5 @@ project = TestCPP -includepaths += -I. +includepaths += -I../testcpp headers = ../testcpp/testcpp.h sources = ../testcpp/testcpp.cpp diff --git a/tests/auto/qdoc/generatedoutput/testdata/crossmodule/CrossModule b/tests/auto/qdoc/generatedoutput/testdata/crossmodule/CrossModule index df9c82ad5..50bea93ab 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/crossmodule/CrossModule +++ b/tests/auto/qdoc/generatedoutput/testdata/crossmodule/CrossModule @@ -1,2 +1,2 @@ -#include "../TestCPP" +#include "../testcpp/TestCPP" #include "testtype.h" diff --git a/tests/auto/qdoc/generatedoutput/testdata/includefromexampledirs/includefromexampledirs.qdocconf b/tests/auto/qdoc/generatedoutput/testdata/includefromexampledirs/includefromexampledirs.qdocconf index 9c60c758f..1d981deb2 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/includefromexampledirs/includefromexampledirs.qdocconf +++ b/tests/auto/qdoc/generatedoutput/testdata/includefromexampledirs/includefromexampledirs.qdocconf @@ -1,6 +1,5 @@ include(../configs/testqml.qdocconf) -includepaths += .. sourcedirs += src excludedirs += excludes \ diff --git a/tests/auto/qdoc/generatedoutput/testdata/qmlpropertygroups/qmlpropertygroups.qdocconf b/tests/auto/qdoc/generatedoutput/testdata/qmlpropertygroups/qmlpropertygroups.qdocconf index c535b4032..62952b429 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/qmlpropertygroups/qmlpropertygroups.qdocconf +++ b/tests/auto/qdoc/generatedoutput/testdata/qmlpropertygroups/qmlpropertygroups.qdocconf @@ -1,6 +1,5 @@ include(../configs/testqml.qdocconf) -includepaths += .. sourcedirs += . HTML.nosubdirs = true diff --git a/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp b/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp index 5d3055ac2..c8b3f2f46 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp +++ b/tests/auto/qdoc/generatedoutput/testdata/testcpp/testcpp.cpp @@ -100,9 +100,7 @@ void Test::obsoleteMember() } /*! - \obsolete - - Use obsoleteMember() instead. + \obsolete Use obsoleteMember() instead. */ void Test::anotherObsoleteMember() { diff --git a/tests/auto/windeployqt/tst_windeployqt.cpp b/tests/auto/windeployqt/tst_windeployqt.cpp index f20e59180..04aece287 100644 --- a/tests/auto/windeployqt/tst_windeployqt.cpp +++ b/tests/auto/windeployqt/tst_windeployqt.cpp @@ -152,7 +152,7 @@ void tst_windeployqt::deploy() const QChar pathSeparator(QLatin1Char(';')); // ### fixme: Qt 5.6: QDir::listSeparator() const QString origPath = env.value(pathKey); QString newPath; - const QStringList pathElements = origPath.split(pathSeparator, QString::SkipEmptyParts); + const QStringList pathElements = origPath.split(pathSeparator, Qt::SkipEmptyParts); for (const QString &pathElement : pathElements) { if (pathElement.compare(qtBinDir, Qt::CaseInsensitive) && !pathElement.contains(QLatin1String("\\lib"), Qt::CaseInsensitive)) { |