-dump-preprocessing-info
特定の解析時に暗黙的に定義されたすべてのマクロの表示
構文
-dump-preprocessing-info
説明
-dump-preprocessing-info
は、特定の Polyspace® 解析時に暗黙的に定義 (または定義解除) されているすべてのマクロを出力します。マクロ定義は、以下から取得されます。
オプション
[コンパイラ] (-compiler)
の指定Polyspace では、コンパイラ固有のマクロを定義することでコンパイラがエミュレートされます。
標準ライブラリ ヘッダーの Polyspace 実装で定義 (または定義解除) されているマクロ
オプション
[プリプロセッサ定義] (-D)
および[無効なプリプロセッサ定義] (-U)
を使用して明示的に定義 (または定義解除) されているマクロ
このオプションは、特定のマクロが Polyspace でどのように定義されているかを確認する場合にのみ使用します。マクロに対して異なる定義を使用する場合は、現在の定義をオーバーライドできます。
ユーザー インターフェイス (Polyspace デスクトップ製品のみ) から解析を実行している場合は、[構成] ペインの [その他] フィールドにこのオプションを入力できます。Other
を参照してください。[出力の概要] ペインでは、個々のマクロ定義が個別の行に表示されます。ユーザー インターフェイスでマクロ名を検索し、マクロ名を含む行をクリックすると、[詳細] ペインに詳細が表示されます。
例
ARM v6 コンパイラを使用してソース コードをビルドしているとします。Polyspace 解析では、オプション [コンパイラ] (-compiler)
に値 armclang
を使用します。Polyspace でマクロ __ARM_ARCH
の定義として何が使用されているかを確認する必要があるとします。
次のコマンドを入力し、コンソール出力を後で検索できるようにファイルにパイプ処理します。
polyspace-bug-finder -sources aFile.c -compiler armclang -dump-preprocessing-info
aFile.c
は簡単な C ファイルにすることができます。polyspace-bug-finder
をpolyspace-code-prover
、polyspace-bug-finder-server
、またはpolyspace-code-prover-server
に置き換えることもできます。コンソール出力を含むファイルで
__ARM_ARCH
を検索します。マクロ定義を含む行を確認できます。この例では、マクロが値 8 に設定されています。Remark: Definition of macro __ARM_ARCH (pre-processing __polyspace__stdstubs.c) |#define __ARM_ARCH 8 |defined by syntax extension xml file |predefined macro
このマクロ定義をオーバーライドするには、オプション
[プリプロセッサ定義] (-D)
を使用します。このマクロの定義を解除するには、オプション
[無効なプリプロセッサ定義] (-U)
を使用します。