4 ms·
My go to for formatting would be clang-format, and for testing gtest. For more extensive formatting (that involves the compiler) clang-tidy goes a long way
by lang4d 1y ago
My go to for formatting would be clang-format, and for testing gtest. For more extensive formatting (that involves the compiler) clang-tidy goes a long way
- CalChris 1y agoI think you meant for more extensive static analysis. Clang-tidy is really awesome. There is also Facebook's Infer. https://fbinfer.com
- account42 1y agoClang tidy does both: it can run clang's analyzer [0] (also available with clang++ --analyze or the scan-build wrapper script which provides nicer HTML-based output for complex problems found), has it's own lightweight code analysis checks but also has checks that are more about formatting and ensuring idiomatic code than it is about typical static analysis. MVSC [1] and GCC [2] also have built-in static analyzers available via cl /analyze or g++ -fanalyzer these days. There is also cppcheck [3], include-what-you-use [4] and a whole bunch more. If you can, run all of them on your code. [0] https://clang-analyzer.llvm.org/ https://clang-analyzer.llvm.org/ [1] https://learn.microsoft.com/en-us/cpp/build/reference/analyze-code-analysis https://learn.microsoft.com/en-us/cpp/build/reference/analyz... [2] https://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html https://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.h... [3] https://cppcheck.sourceforge.io/ https://cppcheck.sourceforge.io/ [4] https://github.com/include-what-you-use/include-what-you-use https://github.com/include-what-you-use/include-what-you-use