diff options
author | Francois Ferrand <[email protected]> | 2014-09-15 11:13:36 +0200 |
---|---|---|
committer | Nikolai Kosjar <[email protected]> | 2014-10-23 13:39:02 +0200 |
commit | 7e544073c0cb2701e5ade0f579f4b6b80d6ec2ec (patch) | |
tree | 6478929bf17fec4f9b0423e5f781b301f9a78f20 /src/plugins/cpptools/cppchecksymbols.cpp | |
parent | a645f78cd69860b57efba4c0a528fec234367327 (diff) |
CppTools: restore C++ diagnostics messages.
The messages were computed, but not added to the document.
Change-Id: Ibeea802cf9f291ad14b2fe2e9d2a285c927a4449
Reviewed-by: Nikolai Kosjar <[email protected]>
Diffstat (limited to 'src/plugins/cpptools/cppchecksymbols.cpp')
-rw-r--r-- | src/plugins/cpptools/cppchecksymbols.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/src/plugins/cpptools/cppchecksymbols.cpp b/src/plugins/cpptools/cppchecksymbols.cpp index 45a4f3d8a15..90ad1c1565c 100644 --- a/src/plugins/cpptools/cppchecksymbols.cpp +++ b/src/plugins/cpptools/cppchecksymbols.cpp @@ -305,6 +305,16 @@ CheckSymbols::Future CheckSymbols::go(Document::Ptr doc, const LookupContext &co return (new CheckSymbols(doc, context, macroUses))->start(); } +CheckSymbols * CheckSymbols::create(Document::Ptr doc, const LookupContext &context, + const QList<CheckSymbols::Result> ¯oUses) +{ + QTC_ASSERT(doc, return NULL); + QTC_ASSERT(doc->translationUnit(), return NULL); + QTC_ASSERT(doc->translationUnit()->ast(), return NULL); + + return new CheckSymbols(doc, context, macroUses); +} + CheckSymbols::CheckSymbols(Document::Ptr doc, const LookupContext &context, const QList<CheckSymbols::Result> ¯oUses) : ASTVisitor(doc->translationUnit()), _doc(doc), _context(context) , _lineOfLastUsage(0), _macroUses(macroUses) @@ -335,10 +345,6 @@ void CheckSymbols::run() _potentialStatics = collectTypes.statics(); Utils::sort(_macroUses, sortByLinePredicate); - // TODO: Handle concurrent (write) access of diagnostic messages and ensure - // propagation to the editor widget -// _doc->clearDiagnosticMessages(); - if (!isCanceled()) { if (_doc->translationUnit()) { accept(_doc->translationUnit()->ast()); @@ -347,15 +353,15 @@ void CheckSymbols::run() } } + emit codeWarningsUpdated(_doc, _diagMsgs); + reportFinished(); } bool CheckSymbols::warning(unsigned line, unsigned column, const QString &text, unsigned length) { Document::DiagnosticMessage m(Document::DiagnosticMessage::Warning, _fileName, line, column, text, length); - // TODO: Handle concurrent (write) access of diagnostic messages and ensure - // propagation to the editor widget -// _doc->addDiagnosticMessage(m); + _diagMsgs.append(m); return false; } |