ClockMan added a comment.

In D143851#4126615 <https://reviews.llvm.org/D143851#4126615>, @carlosgalvezp 
wrote:

> Yes, clang-tidy will not issue warnings in system headers, so checks should 
> not need to explicitly handle that.

That's not so simple. At work we use clang-tidy for few big projects. I had to 
explicitly add to some checks `unless(isExpansionInSystemHeader())` to gain 
some performance improvement of clang-tidy. This check is one of them.
Problem is that some matchers or `check` methods in checks are heavy, and when 
you got lot of system headers (boost, STL, generated interfaces, message 
structs, ...) you may end up easily with hundreds of hidden issues from single 
translation unit.
For some checks explicit exclude of system headers gives ~50% performance 
improvement, that result in faster CI feedback.

Best would be to have something more generic like: if --system-headers is not 
used, then exclude code as early as possible, before even constructing 
diagnostic information.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D143851/new/

https://reviews.llvm.org/D143851

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to