diff options
author | Martin Smith <martin.smith@qt.io> | 2016-09-01 09:40:15 +0200 |
---|---|---|
committer | Martin Smith <martin.smith@qt.io> | 2017-08-10 07:32:53 +0000 |
commit | 02de17eae61496e3b9ba78de5b8868ad94d21294 (patch) | |
tree | 4ad0a3f8ea752922e466f3b776056b4228bb2e7b /src/qdoc/cppcodeparser.cpp | |
parent | c3afec5a9adbed05c780dcfff5de0e76f287cb79 (diff) | |
download | qttools-02de17eae61496e3b9ba78de5b8868ad94d21294.tar.gz |
qdoc: Don't report error for things marked \internal
This change allows qdoc to avoid printing warnings about
a qdoc comment, if the comment contains the \internal
command. In these cases, the comment will not be
used in the documentation, so there is no point reporting
warnings about it. However, if the showinternal option is
used, warnings about comments marked internal are printed
anyway.
Change-Id: Idcb329958681523c79e9f6a3a144ae26d44a6906
Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
Diffstat (limited to 'src/qdoc/cppcodeparser.cpp')
-rw-r--r-- | src/qdoc/cppcodeparser.cpp | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/qdoc/cppcodeparser.cpp b/src/qdoc/cppcodeparser.cpp index 3c21c8b1b..798b6e395 100644 --- a/src/qdoc/cppcodeparser.cpp +++ b/src/qdoc/cppcodeparser.cpp @@ -231,7 +231,9 @@ Node* CppCodeParser::processTopicCommand(const Doc& doc, if (func == 0) func = qdb_->findNodeInOpenNamespace(parentPath, clone); - if (func == 0) { + if (func) { + lastPath_ = parentPath; + } else if (isWorthWarningAbout(doc)) { doc.location().warning(tr("Cannot find '%1' in '\\%2' %3") .arg(clone->name() + "(...)") .arg(COMMAND_FN) @@ -241,8 +243,6 @@ Node* CppCodeParser::processTopicCommand(const Doc& doc, "is identical to the declaration, including 'const' " "qualifiers.")); } - else - lastPath_ = parentPath; if (func) { func->borrowParameterNames(clone); func->setParentPath(clone->parentPath()); @@ -306,8 +306,10 @@ Node* CppCodeParser::processTopicCommand(const Doc& doc, if (node == 0) node = qdb_->findNodeByNameAndType(path, type); if (node == 0) { - doc.location().warning(tr("Cannot find '%1' specified with '\\%2' in any header file") - .arg(arg.first).arg(command)); + if (isWorthWarningAbout(doc)) { + doc.location().warning(tr("Cannot find '%1' specified with '\\%2' in any header file") + .arg(arg.first).arg(command)); + } lastPath_ = path; } @@ -798,11 +800,13 @@ void CppCodeParser::processOtherMetaCommand(const Doc& doc, FunctionNode *func = (FunctionNode *) node; const FunctionNode *from = func->reimplementedFrom(); if (from == 0) { - doc.location().warning(tr("Cannot find base function for '\\%1' in %2()") - .arg(COMMAND_REIMP).arg(node->name()), - tr("The function either doesn't exist in any " - "base class with the same signature or it " - "exists but isn't virtual.")); + if (isWorthWarningAbout(doc)) { + doc.location().warning(tr("Cannot find base function for '\\%1' in %2()") + .arg(COMMAND_REIMP).arg(node->name()), + tr("The function either doesn't exist in any " + "base class with the same signature or it " + "exists but isn't virtual.")); + } } /* Ideally, we would enable this check to warn whenever @@ -810,8 +814,9 @@ void CppCodeParser::processOtherMetaCommand(const Doc& doc, internal if the function is a reimplementation of another function in a base class. */ - else if (from->access() == Node::Private - || from->parent()->access() == Node::Private) { + else if ((from->access() == Node::Private + || from->parent()->access() == Node::Private) + && isWorthWarningAbout(doc)) { doc.location().warning(tr("'\\%1' in %2() should be '\\internal' " "because its base function is private " "or internal").arg(COMMAND_REIMP).arg(node->name())); |