Usar Clang-Tidy no Visual Studio
O suporte para Clang-Tidy requer o Visual Studio 2019 versão 16.4 ou posterior. Para ver a documentação dessas versões, defina o controle seletor de Versão do Visual Studio para este artigo do Visual Studio 2019 ou posteriores. Ele está na parte superior do sumário nesta página.
O Code Analysis dá suporte nativamente ao Clang-Tidy em projetos do MSBuild e do CMake, independentemente de você estar usando os conjuntos de ferramentas Clang ou o MSVC. As verificações do Clang-Tidy podem ser executadas como parte da análise de código em segundo plano. Elas aparecem como avisos no editor (rabiscos) e são exibidas na Lista de Erros.
Suporte ao Clang-Tidy está disponível a partir do Visual Studio 2019 versão 16.4. Ele é incluído automaticamente quando você escolhe uma carga de trabalho C++ no Instalador do Visual Studio.
Clang-Tidy é a ferramenta de análise padrão ao usar o conjunto de ferramentas LLVM/clang-cl, disponível tanto no MSBuild quanto no CMake. Você pode configurá-lo ao usar um conjunto de ferramentas MSVC para executar paralelamente ou em substituição à experiência padrão do Code Analysis. Se você usar o conjunto de ferramentas clang-cl, o Microsoft Code Analysis não fica disponível.
O Clang-Tidy é executado após uma compilação bem-sucedida. Talvez seja necessário resolver erros de código-fonte para obter resultados do Clang-Tidy.
MSBuild
Você pode configurar o Clang-Tidy para executar como parte da Análise de Código e compilar na página Code Analysis>Geral na janela Propriedades do Projeto. As opções para configurar a ferramenta podem ser encontradas no submenu do Clang-Tidy.
Para obter mais informações, consulte Como definir propriedades do Code Analysis para projetos do C/C++.
CMake
Em projetos do CMake, você pode configurar verificações Clang-Tidy dentro de CMakeSettings.json
ou CMakePresets.json
.
O Clang-Tidy reconhece as seguintes chaves:
enableMicrosoftCodeAnalysis
: Habilita o Microsoft Code AnalysisenableClangTidyCodeAnalysis
: Habilita análise do Clang-TidyclangTidyChecks
: configuração do Clang-Tidy. Uma lista separada por vírgulas de verificações para habilitar ou desabilitar. Um-
à esquerda desabilita a verificação. Por exemplo,cert-oop58-cpp, -cppcoreguidelines-no-malloc, google-runtime-int
habilitacert-oop58-cpp
egoogle-runtime-int
, mas desabilitacppcoreguidelines-no-malloc
. Para obter uma lista de verificações Clang-Tidy, consulte a documentação Clang-Tidy.
Se nenhuma das opções "habilitar" for especificada, o Visual Studio selecionará a ferramenta de análise correspondente ao conjunto de ferramentas de plataforma usado.
Configurações do CMake
Para editar as configurações do Clang-Tidy, abra as configurações do CMake e selecione Editar JSON no Editor de Configurações do projeto do CMake. Você pode usar as chaves acima para preencher suas especificações do Clang-Tidy no arquivo JSON de configurações do CMake.
Uma implementação de configurações do CMake de exemplo tem esta aparência:
{
"configurations": [
{
"name": "x64-debug",
"generator": "Ninja",
....
"clangTidyChecks": "llvm-include-order, -modernize-use-override",
"enableMicrosoftCodeAnalysis": true,
"enableClangTidyCodeAnalysis": true
}
]
}
Predefinições do CMake
As mesmas chaves podem ser usadas em suas predefinições do CMake por meio do objeto vendor
.
Um exemplo de implementação predefinida do CMake tem esta aparência:
"configurePreset": [
{ "name": "base",
....
"vendor": {
"microsoft.com/VisualStudioSettings/CMake/1.0": {
"clangTidyChecks": "llvm-include-order, -modernize-use-override",
"enableMicrosoftCodeAnalysis": true,
"enableClangTidyCodeAnalysis": true
}
}
}
]
Exibição de aviso
As execuções do Clang-Tidy resultam em avisos exibidos na Lista de Erros e conforme o editor interno rabisca sob seções relevantes do código. Para classificar e organizar avisos Clang-Tidy, use a coluna Categoria na janela Lista de Erros. Você pode configurar avisos no editor alternando a configuração Desabilitar rabiscos do Code Analysis em Ferramentas>Opções.
Configuração do Clang-Tidy
Por padrão, o Clang-Tidy não define nenhuma verificação quando habilitado. Para ver a lista de verificações na versão da linha de comando, execute clang-tidy -list-checks
em um prompt de comando do desenvolvedor. Você pode configurar as verificações de que o Clang-Tidy é executado dentro do Visual Studio. Na caixa de diálogo Páginas de propriedades do projeto, abra a página Propriedades de configuração>Code Analysis>Clang-Tidy. Insira verificações para serem executadas na propriedade Clang-Tidy Checks. Um bom conjunto padrão é clang-analyzer-*
. Esse valor de propriedade é fornecido ao argumento --checks
da ferramenta. Qualquer configuração adicional pode ser incluída em arquivos personalizados .clang-tidy
. Para obter mais informações, consulte a documentação do Clang-Tidy no LLVM.org.
Diretório de Ferramentas Clang-Tidy
Se quiser ter regras personalizadas incorporadas ao executável do clang-tidy e executá-lo no Microsoft Visual Studio, você poderá alterar o caminho do executável que o Visual Studio executa. Na caixa de diálogo Páginas de propriedades do projeto, abra a página Propriedades de configuração>Code Analysis>Clang-Tidy. Digite manualmente o caminho ou Procure e selecione o caminho na propriedade do Diretório de Ferramentas Clang-Tidy. O novo executável é usado depois que a alteração é salva e o aplicativo é recompilado.
Confira também
Suporte do Clang/LLVM para projetos do MSBuild
Suporte do Clang/LLVM para projetos do CMake