問題タブ [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.
c - サードパーティ ライブラリを含むプロジェクトで PC-Lint を使用する
大規模なサードパーティ ライブラリを含むプロジェクトがあり、プロジェクトがリントフリーであることを確認する必要があります。ただし、ライブラリには数千のエラーがあります。
これらを削除するためにライブラリを変更することはオプションではありません - これは通常どのように処理されますか?
現在、コードは Keil uVision を使用してビルドされており、ここから PC-Lint が呼び出されます。
これらがライブラリ ファイルであるため、分析しないように指定する方法はありますか?
ありがとう。
visual-studio - PC-lint を Visual Studio で動作させる
Gimpel の PC-Lint 9.00j を使用して、何百もの偽のエラーを吐き出さずに Visual Studio 2012 のインクルード ファイルを解析した人はいますか?
私が使用している設定のサブセット (完全な設定ではまったく同じ結果が得られます):
次のワンライナーをリントしようとすると、325 エラーが発生します。
お知らせ下さい。
c - 次の PC-Lint 警告を C で消去するにはどうすればよいですか?
次のコードについて質問があります。
マクロ NUM_PEOPLE は NUM_DAYS より大きいまたは NUM_DAYS より小さい値に変更できますが、次の警告が表示されます:
Warning 506: Constant value Boolean
、どうすれば修正できますか? または、定数を変数に変更する以外に、それを回避する他の方法はありますか?
qt - PC-Lint を Qt Creator に統合するにはどうすればよいですか?
env-vc10.lntファイルの記述を使用して、PC-Lint 9.00c を Visual Studio に統合することができました。Qt-Creator 2.7 から PC-lint を実行する同様の方法や説明はありますか?
c - unsigned int 値を uint32_t 変数に代入すると PC-Lint エラーが発生する
次のコード行があります。
au-misra2.lnt
これにより、構成ファイルを使用すると、次の 3 つの PC-Lint エラーが発生します。
変更:
0 の値が割り当てられます。
なぜこれが起こるのでしょうか?これは 32 ビット Cortex-M3 プロセッサ用であるため、これは unsigned int を unsigned int に割り当てる必要があります。なぜそれが受け入れられないのか理解できません。
誰にもアイデアはありますか?
c - 匿名構造体に関する Lint メッセージを抑制するにはどうすればよいですか?
次のようなコードで PC-Lint 8.00x を実行しています。
PC-Lint は次のエラー メッセージを返します。
Error 40: Undeclared identifier 'blue'
Error 63: Expected an lvalue
コードは期待どおりにコンパイルおよび実行されます。 これは匿名の構造体が原因であると想定していますが、その想定は正しいですか? もしそうなら、この特定の状況でこれらのメッセージを抑制するにはどうすればよいですか? 私は現在、「options.lnt」ファイル内のメッセージを抑制しています。ローカルのコーディング慣行では、Lint メッセージを抑制するためにコードに直接コメントを入れることを禁止しているためです。
c++ - pclint の実行時にインクルード ファイルの順序は重要ですか?
pclint を実行すると、インクルード ヘッダーが c/c++ ファイルで定義される順序に問題が見つかりました。
インクルードオーダーは、
そして、pclint を実行すると、たとえば FILE が宣言されていないなどのエラーが発生します。
後でインクルードの順序を変更しました
多くのエラーがなくなっていることがわかりました。この動作の理由を理解できません。C/C++ (NT) バージョンでは PC-lint を使用しています。8.00w。
インクルード パスを +libdir(D:\timesys\Nitrogen6x\toolchain\include) のようにマークしました。
ブリジェシュありがとう
c - Eclipse での PC Lint プリントの正規表現行
PC Lint が「問題」ビュー (Eclipse C/C++ Kepler) に出力されるようにするには、Eclipse の「正規表現エラー パーサー」にどのような正規表現スペルを設定する必要がありますか。
現在の lint 形式は -"format=LINT %t%(: %f:%l %) %n %m" で、以下を出力します:
LINT Info: Y:\path\to\file.c:91 732 Loss of sign (assignment ) (int から unsigned long)
必要なのは、最初にそれが情報、警告、またはエラーであることを特定してから取得することです:
1. ファイル: 'Y:\path\to\file.c'
2: 行: '91'
3: 説明: '732 ...」
私にとってはうまくいかなかった例が1つ見つかりました(おそらく形式が異なります)。独自の正規表現コマンドを作成しようとしましたが失敗しました。
役立つ場合は、PC-Lint 形式を変更することもできます。
c - 構造体メンバーの C99 スタイルの初期化で PC-Lint エラーを抑制するにはどうすればよいですか?
次のオプションで PC-Lint 8.00x を使用しています。
+v -wlib(1) +fan +fas
次のようなコードを実行すると、PC-Lint から多数のエラー メッセージが表示されます。
報告されたエラーは、PC-Lint によって次のように定義されています。
エラー 133: 集合体 'unknown-name' の初期化子が多すぎます
エラー 10: '}' が必要です
Gimpel を検索してみたり、Google で検索したりしましたが、役に立つものは見つかりませんでした。コードは意図したとおりに機能し、すべてが適切に初期化されます。これが私の質問です。
1. PC-Lint 8.00x は構造体メンバーの C99 スタイルの初期化をサポートしていますか?
2. その場合、これらのメッセージをグローバルに抑制するには、PC-Lint にどのオプション/フラグを設定する必要がありますか?
EDIT
質問 2 に関してもっと詳しく説明する必要がありました。上記の指定イニシャライザの使用に関して、これらのメッセージをグローバルに抑制したいと思います。これらのエラーはコード内の真のエラーを検出できるため、すべての状況でそれらをグローバルに抑制することはできません。