On Tue, Jul 5, 2022 at 8:16 AM Daniel P. Berrangé <berra...@redhat.com> wrote: > for i in `git ls-tree --name-only -r HEAD:` > do > clang-tidy $i 1>/dev/null 2>&1 > done
All of those invocations are probably failing quickly due to missing includes and other problems, since the location of the compilation database and some other arguments haven't been specified. Accounting for those problems (and enabling just one random C++ check): $ time clang-tidy -p build \ --extra-arg-before=-Wno-unknown-warning-option \ --extra-arg='-isystem [...]' \ --checks='-*,clang-analyzer-cplusplus.Move' \ $( find block -name '*.c' ) [...] real 3m0.260s user 2m58.041s sys 0m1.467s Single-threaded static-analyzer.py without any checks: $ time ./static-analyzer.py build block -j 1 Analyzed 79 translation units in 16.0 seconds. real 0m16.665s user 0m15.967s sys 0m0.604s And with just the 'return-value-never-used' check enabled for a somewhat fairer comparison: $ time ./static-analyzer.py build block -j 1 \ -c return-value-never-used Analyzed 79 translation units in 61.5 seconds. real 1m2.080s user 1m1.372s sys 0m0.513s Which is good news! Alberto