Pergunta

Meu código é uma mistura de bits e peças diferentes do código mais antigo.

Eu gostaria de apagar todas as funções nunca usadas para manter o código simples.

Klocwork é a ferramenta? Como eu faço isso?

Obrigado,

Moshe.

Foi útil?

Solução

Você poderia usar o -p ou -pg opções para gcc Para fazer com que o código seja adicionado ao prólogo e ao epílogo de todas as funções, para que um banco de dados de perfil seja gravado quando o programa é executado. A ferramenta prof é usado para analisar a saída de -p e gprof por -pg. Essas ferramentas produzem relatórios mostrando quais funções foram usadas, quantas chamadas e quanto tempo foi gasto em cada um. Funções não utilizadas estarão ausentes no banco de dados de perfil.

Você também pode usar gcov Para obter um relatório de quais linhas de código foram realmente executadas. As funções nunca chamadas serão executadas 0 vezes ....

Outras dicas

O KLOCWork encontrará função/métodos não utilizados. Existe um pacote de verificador especial que você pode baixar no my.klocwork.com (se você tiver uma conta) que lhe dará esses verificadores especiais.

Não estou familiarizado com o Klocwork, mas gcc tem a opção de aviso -Wunused-function Isso detecta as funções mais desnecessárias. -Wunused-function é parte de -Wall.

Klockwork não detecta funções desnecessárias. É usado apenas para análise estática.

Você pode verificar assim:

foo()
{
   char *a;
   a = malloc(100);
}
bar()
{
   char a[100];
}

main()
{
   bar();
}

Isso provavelmente relataria vazamento de função Foo, que é realmente desnecessário. No entanto, como Schot sugeriu, você pode procurar opções de compilador.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top