メインコンテンツ

コードの動作の指定

変数範囲、ライブラリの使用、その他の情報などのコードの動作を指定して、Polyspace® Bug Finder™ 解析における誤検知または検知漏れの結果を削減する

誤検知または検知漏れの結果を削減するには、コードに関する追加情報を提供します。以下に例を示します。

  • オプション [制約の設定] (-data-range-specifications) を使用して、変数の範囲やポインターに許容されるバッファー サイズなどの要素に対する制約を指定します。

  • -code-behavior-specifications を使用して、コードの関数を既知の標準ライブラリ関数にマッピングします。

  • -code-behavior-specifications を使用して、コードで許可しない識別子またはマクロを指定します。

  • オプション -asm-begin -asm-end を使用して、アセンブリ コードの境界を指定します。

  • オプション -code-behavior-specifications を使用して、異なる方法で解析する必要があるコードを指定します。たとえば、リアルタイム関数、メモリ管理関数、例外処理関数、クリティカルなデータ メンバーを含むコードを指定できます。

  • Simulink® モデルから生成されたコードを解析するときに、データ フローを正確にモデル化するためにパラメーター、入力、ステップ関数を指定します。

ここに記載する解析オプションを使用して、Polyspace Bug Finder に対してコードをより詳細に記述すると、解析の精度と速度を向上させることができます。

Polyspace オプション

すべて展開する

制約の設定 (-data-range-specifications)グローバル変数、関数の入力およびスタブ関数の戻り値の制約
使用するライブラリ (-library)プログラムで使用するライブラリの指定
-code-behavior-specificationsコードの要素 (関数など) への動作の関連付け
-classificationControl precisely which files to include in Polyspace analysis and how to analyze them (R2023a 以降)
-asm-begin -asm-endコンパイラ固有の asm 関数の解析からの除外
有効な boolean 型 (-boolean-types)コーディング ルール チェッカーが実質的に boolean として扱うデータ型の指定
許可されるプラグマ (-allowed-pragmas)ドキュメント化されているプラグマ指令の指定
スタブを生成する関数 (-functions-to-stub)解析時にスタブ化する関数の指定
-termination-functionsプロセス終了関数を指定します。
検証時間の制限 (-timeout)解析の時間制限の指定
モデル生成コードの検証 (-main-generator)ソース ファイル中にない場合は main 関数を生成することの指定
パラメーター (-variables-written-before-loop)生成された main によって巡回コード ループの前に必ず初期化される変数の指定
入力 (-variables-written-in-loop)生成された main によって巡回コード ループ中に必ず初期化される変数の指定
初期化関数 (-functions-called-before-loop)生成された main によって巡回コード ループの前に必ず呼び出される関数の指定
ステップ関数 (-functions-called-in-loop)生成された main によって巡回コード ループ中に必ず呼び出される関数の指定
終了関数 (-functions-called-after-loop)生成された main によって巡回コード ループの後に必ず呼び出される関数の指定

トピック

追加情報の提供

外的制約の指定