clangd documentation says:
clangd respects your project’s
.clang-tidy file which controls the checks to run. Not all checks work within clangd.
bugprone-use-after-move doesn’t work for me in clangd.
Is there a list of clang-tidy checks that are supported/not supported by clangd?
I think the answer is all checks are supported except:
There might also be checks that don’t work as intended all the time. The 2 main reasons for the short coming here are:
- clangd only provides traversal over “main file” section of the source code. e.g. if a check tries to do some analysis for the code inside the headers, especially through ast matchers, it might fail to find them. these checks are harder to notice.
- clang can build “weird-shaped AST” for invalid/incomplete code, which clangd sees a lot during the editing session. some checks do crash when AST is not of the shape they were expecting. these checks are usually noticed through excessive crashes, hence are disabled already.