Problem diagnosis
The issue is you have installed the clangd extension, which runs the clangd
program in the background. clangd
embeds the clang-tidy
functionality (doc link), and it runs in the background automatically, contributing problem reports to the VSCode "Problems" window.
This is different from how the C/C++ extension works, invoking clang-tidy
in response to the palette command "C/C++: Run Code Analysis on Active File". The configuration setting "C_Cpp > Code Analysis > Clang Tidy > Checks: Disabled" only affects clang-tidy
when invoked by the C/C++ extension, not the clangd extension.
Solution
To influence the clang-tidy
that runs as part of clangd
, you have to create a .clang-tidy
file in your project directory.
For example, this .clang-tidy
will disable misc-unused-using-decls
:
---
Checks: '-misc-unused-using-decls'
Having created a .clang-tidy
file like that, the next time you modify your source file (even without saving), the findings produced by that checker will disappear from the Problems window.
A forgotten prompt?
Since the clangd extension and the C/C++ extension both provide language services, the former prompts to disable the latter upon installation with a dialog that looks like this:

Presumably, this prompt appeared when you added the clangd extension, and you clicked to disable Intellisense at that time, but forgot about it (understandably). It's also far from obvious that doing so changes how clang-tidy
runs, and thereby obviates the related settings in the "C_Cpp > Code Analysis" section, but it turns out it does.