D18224: Clang Plugin: Report some problems from included files

Thomas Schöps noreply at phabricator.kde.org
Sun Feb 24 19:35:14 GMT 2019


thomassc updated this revision to Diff 52481.
thomassc added a comment.


  Address comments. Now, problems are created for each "requested here" child diagnostic that refers to the current document. This may be more than just the last child diagnostic, since there may be multiple ones referring to the current document.
  
  I used a hack to apply i18n() in cases where the replacement for the %1 parameter is only known later, e.g.: `i18n("In included file: %1", QLatin1String("%1"))`. Is there a better solution? When leaving the replacement away, the function appended an error message to the string. Alternatively, if clang doesn't translate its messages yet, maybe this should also be left in English for consistency?
  
  I wouldn't use the original description of the child diagnostic as-is, at least not without further marking the problem somehow as referring to another file. Otherwise, the diagnostic message may look unrelated to the line of code where it points to, which may be confusing. Prepending the message with something like "Requested here: " seemed like the easiest way to signal that it eventually relates to another line of code.
  
  The unit tests now all pass (given that https://phabricator.kde.org/D18567 is applied).

REPOSITORY
  R32 KDevelop

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D18224?vs=49961&id=52481

REVISION DETAIL
  https://phabricator.kde.org/D18224

AFFECTED FILES
  plugins/clang/duchain/clangproblem.cpp
  plugins/clang/duchain/clangproblem.h
  plugins/clang/duchain/parsesession.cpp
  plugins/clang/tests/test_duchain.cpp
  plugins/clang/tests/test_duchain.h

To: thomassc, #kdevelop, mwolff
Cc: aaronpuchert, pino, mwolff, kdevelop-devel, glebaccon, domson, antismap, iodelay, alexeymin, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20190224/999a102b/attachment.html>


More information about the KDevelop-devel mailing list