質問

私のコードは、古いコードとは異なるビットとピースの混合です。

コードをシンプルに保つために、使用されていないすべての機能を消去したいと思います。

Klocworkはツールですか?どうすればいいのですか?

ありがとう、

モシェ。

役に立ちましたか?

解決

使用できます -p また -pg のオプション gcc プログラムが実行されたときにプロファイルデータベースが記述されるように、すべての関数のプロローグとエピローグにコードを追加します。道具 prof からの出力を分析するために使用されます -pgprof にとって -pg. 。これらのツールは、使用された機能、コールの数、それぞれにどれだけの時間を費やしたかを示すレポートを作成します。プロファイルデータベースから未使用関数が欠落しています。

使用することもできます gcov 実際に実行されたコードの行をレポートするには。呼び出されない関数は0回実行されます。

他のヒント

Klocworkは未使用の機能/メソッドを見つけます。 My.klocwork.com(アカウントがある場合)にダウンロードできる特別なチェッカーパックがあり、これらの特別なチェッカーを提供します。

私はKlocworkに精通していませんが、 gcc 警告オプションがあります -Wunused-function これは、ほとんどのない機能を検出します。 -Wunused-function の一部です -Wall.

KLOCKWORKは、非関連関数を検出しません。静的分析のみに使用されます。

このように確認できます。

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

main()
{
   bar();
}

これはおそらく、実際には不明な機能FOOのリークを報告します。ただし、Schotが提案したように、コンパイラオプションを調べることができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top