Em um dos artigos aqui do blog nós publicamos sobre o clang-format, hoje vamos conhecer outra ferramenta da coleção de aplicativos do Clang/LLVM: clang-tidy
.
Clang-Tidy é um linter para C++. Sua finalidade é fornecer uma estrutura extensível para diagnosticar e corrigir erros típicos de programação, como violações de estilo, uso indevido de interface ou bugs que podem ser deduzidos por meio de análise estática.
Para instalar o clang-tidy
basta usar os mesmos procedimentos descritos no artigo do clang-format.
A maneira mais simples de verificar seu código com clang-tidy
é: suponhamos que você possui o código abaixo que imprime um ponteiro em vez da referência ou o dado propriamente dito:
main.cpp
Mesmo que você compile com os devidos parâmetros do seu compilador para detectar falhas não conseguirá detectar o
warning
.
Usando o comando abaixo com clang-tidy
você poderá detectar:
Vai aparecer a saída:
clang-tidy tem suas próprias verificações e também pode executar verificações do Clang Static Analyzer. Cada verificação tem um nome e as verificações a serem executadas podem ser escolhidas usando a opção -checks=
, que especifica uma lista separada por vírgulas e -
, por exemplo:
Esse comando desabilitará todas as verificações padrão (
-*
) e habilitará todasclang-analyzer-*
excetoclang-analyzer-cplusplus*
.
Em resumo, é uma ferramenta útil e utilizada como padrão na maioria das configurações para LSP.
Para mais informações use clang-tidy --help
e leia a documentação oficial.
clang-tidy
: