問題タブ [pc-lint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
825 参照

c++ - メンバ テンプレートで奇妙な PC-Lint エラーが発生する

私は現在 PC-Lint (バージョン 9.00j および l) に取り組んでおり、コードの一部に対していくつかのエラーと警告が表示されます。コードは適切にコンパイルされ、期待どおりに実行されます。これを簡略化したバージョンを次に示します。

これを Gimpel のオンライン デモで実行すると、次のエラーと警告が表示されます。

したがって、基本的に、PC-Lint は正しいテンプレート パラメータを偶然見つけて、ベクトルの一時的なコピーだけが埋められることを伝えようとしています。しかし、コードはうまく動作し、resultList にはデータが含まれています!

ここで何が起こっているのか誰か教えてもらえますか? PC-Lint は正しく、何かがうまくいかないのか、それとも単なる PC-Lint のバグなのか?

0 投票する
1 に答える
2561 参照

c - PC-Lint エラー: エラー 307: 間接ファイル 'gcc-include-path.lnt' を開けません

Windows で PC-Lint を使用して、C ファイルの静的コード分析を実行しようとしています。ソフトウェアをインストールし、gcc コンパイラの構成セットアップを実行すると、config ディレクトリに次のファイルが作成されました。

ただし、config ディレクトリから入力してテスト サンプルを実行しようとすると>lin filea fileb、次のエラーが発生します。

gcc-include-path.lnt ファイルを取得するにはどうすればよいですか?

0 投票する
1 に答える
938 参照

c++ - FlexeLint/PC-lint は std::string::append の戻り値が考慮されていないことを警告しています

FlexeLint/PC-lintは、 std::string::append の戻り値が次の削減されたサンプル コードで考慮されないことについて警告しています。

FlexeLint を呼び出すと、次の警告が表示されます。

このメッセージは true ですが、 std::string::appendは単に *this を返すだけなので、この場合の戻り値をキャッチしても意味がありません。

さらに、このオブジェクトに関連する反復子、ポインター、および参照が無効になる場合があります。しかし、これは当てはまりません。反復子、ポインター、および参照は使用されません。

質問

何か重要なことを見逃していましたか、それとも単に FlexeLint の誤検知ですか?

0 投票する
2 に答える
1708 参照

c - どっちも副作用あるの?

次の C コードで MISRA 2004 および MISRA 2012 の静的コード分析を実行しました。

PC-lintレポートから次の調査結果を得ました。 ここに画像の説明を入力

58行目と66行目のコードがどのように副作用に悩まされているのか、またどのように修正すればよいのか、誰か説明してもらえますか?