2016-07-28 10 views
2

のために、「冗長コードは数値定数で始まる文を発見」、私はこのラインを持っています:cppcheckレポートcppcheckが言う</p> <pre><code>using GridType = Grid<boost::optional<float>, 2>; </code></pre> <p>いる:これは文脈のトンではないことを理解する「を使用して」ステートメント

Redundant code: Found a statement that begins with numeric constant. 

は、私が「偽陽性」と思うだろうが、通常はこれらの分析ツールは、私よりも賢くしているので、私は誰もがこのようなステートメントは、解析することにより、そのように解釈された理由を考えることができるかどうかを確認したいですか?

私はUbuntuシステムでcppcheck 1.61を使用しています。

+0

あなたのcppcheckのバージョンとそれを実行しているプラ​​ットフォームについて言及する必要があります。 –

+1

@JesperJuhl質問にバージョンを追加しました。 –

答えて

1

cppcheckは主にパターンマッチングに基づいており、時にはスマートではありません。それはですは素晴らしいものの束を見つけるだけでなく、偽陽性のたくさんあります。私はこれが偽陽性で、cppchecksの単純な心が混乱していると言いたい。

また、バージョン1.61は少し古いです。あなたが最新の1.74をテストしてここでより賢いかどうかを確認しましたか? (あなたのディストリビューションリポジトリにない場合は、ソースからビルドするのが簡単です)

+0

1.74と1.73は、Red Hat 4.8.3-9(これはAWSインスタンス)で長時間(多くの時間、ほとんどハングしているようなものです)です。 1.61には数分しかかかりません。私はバージョンリストを下にして、それがいつよりうまくいくかを見ていくつもりです。それがなぜ起こっているのでしょうか? –

+0

いいえ、考えられません。私が作業しているコードベースでは、1.74が数十分で実行されます(〜700.000行のC++)。 –

+0

1.70とうまく動作し、非常に遅いですが、1.71のより高いバージョンほど遅くはなく、1.72で狂っています。私は1.70に固執すると思います...? :) –

関連する問題

 関連する問題