メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

ソースおよび次に対する結果を生成する (-generate-results-for)

解析結果が必要なファイルの指定

説明

このオプションは Bug Finder 解析のみに影響します。

解析結果が必要なファイルを指定します。

既定で、ソース ファイルに関する結果と、ソース ファイルと同じフォルダー内のヘッダー ファイルに関する結果が表示されます。このオプションを使用して、他のヘッダー ファイル内の結果を表示できます。オプション [次に対する結果を生成しない] (-do-not-generate-results-for) を使用して、フォルダー全体を抑制した場合は、このオプションを使用して、一部のサブフォルダーまたはそれらのフォルダー内のファイルを抑制解除できます。

オプションの設定

以下のいずれかの方法を使用してオプションを設定します。

  • Polyspace® ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成で [入力およびスタブ] ノードを選択してから、このオプションの値を選択します。

  • Polyspace Platform ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成の [静的解析] タブで [欠陥とコーディング規約] ノードを選択してから、このオプションの値を選択します。

  • コマンド ラインとオプション ファイル: オプション -generate-results-for を使用します。コマンド ライン情報を参照してください。

このオプションを使用する理由

最も関連性の高いヘッダー ファイルの結果を確認するには、このオプションを使用します。

たとえば、既定では、ソース ファイルと同じフォルダーにあるヘッダー ファイルについての結果が生成されます。ほとんどの場合、それ以外のヘッダー ファイルはサードパーティ ライブラリに属しています。正確な解析にはこれらのヘッダー ファイルが必要でも、これらのヘッダー ファイルでの調査結果をレビューすることは重要ではありません。そのため、既定では、それらのヘッダーに関する結果は生成されません。サードパーティ ライブラリに属する特定のヘッダーに "関心がある" 場合は、このオプションの既定値を変更します。

Polyspace as You Code では、ヘッダー #include-d でソース ファイルによる結果を確認することは "一切" できないことに注意してください。既定の動作では、ソース ファイルと同じフォルダー (またはサブフォルダー) 内のヘッダーが解析で考慮されますが、ヘッダーで検出された結果は非表示にされます。このオプションは、解析で考慮されるヘッダーのスコープを拡大する目的でのみ使用できます。Polyspace as You Code の解析範囲 (Polyspace Access)も参照してください。

設定

既定値: source-headers

source-headers

ソース ファイルの結果と、ソース ファイルと同じフォルダーまたはソース ファイル フォルダーのサブフォルダーにあるヘッダー ファイルの結果が表示されます。

ソース ファイルは、Polyspace プロジェクトの Source フォルダーに追加する (または、コマンド ラインで引数 -sources に指定する) ファイルです。

all-headers

ソース ファイルとすべてのヘッダー ファイルの結果が表示されます。ヘッダー ファイルは、ソース ファイルと同じフォルダー、ソース ファイル フォルダーのサブフォルダー、インクルード フォルダーのいずれかにあります。

ソース ファイルは、Polyspace プロジェクトの Source フォルダーに追加する (または、コマンド ラインで引数 -sources に指定する) ファイルです。

インクルード フォルダーは、Polyspace プロジェクトの Include フォルダーに追加する (または、コマンド ラインで引数 -I に指定する) フォルダーです。

custom

ソース ファイルと指定したファイルの結果が表示されます。フォルダー名を入力すると、そのフォルダー (およびそのサブフォルダー) 内のヘッダー ファイルに関する結果が表示されます。

をクリックしてフィールドを追加します。ファイル名またはフォルダー名を入力します。

ヒント

  1. このオプションは、オプション [次に対する結果を生成しない] (-do-not-generate-results-for) の適切な値と組み合わせて使用します。

    [custom] を選択した際に、2 つのオプションの値が競合している場合は、より具体的な値によって結果の表示が決まります。たとえば、以下の例では、オプション [ソースおよび次に対する結果を生成する] の値の方が具体的です。

    ソースおよび次に対する結果を生成する次に対する結果を生成しない最終結果

    custom:

    C:\Includes\Custom_Library\

    custom:

    C:\Includes

    C:\Includes\Custom_Library\ とそのサブフォルダー内のヘッダー ファイルに関する結果は表示されますが、C:\Includes 内のその他のヘッダー ファイルに関する結果は生成されません。

    custom:

    C:\Includes\my_header.h

    custom:

    C:\Includes\

    C:\Includes\ にあるヘッダー ファイル my_header.h の結果は表示されますが、C:\Includes\ とそのサブフォルダーにあるその他のヘッダー ファイルの結果は生成されません。

    これら 2 つのオプションを組み合わせて使用すると、特定のフォルダーにあるすべてのファイルの結果を非表示にしながら、これらのフォルダーにある特定のファイルの結果を表示することができます。

  2. このオプションで [all-headers] を選択すると、オプション [次に対する結果を生成しない] で指定した項目に関係なく、すべてのヘッダー ファイルの結果が表示されます。

  3. オプション -classification を使用して、一連のファイルの結果を表示したり、非表示にしたりすることもできます。このオプションでは、ファイル セットを定義して、それらのファイル セットに動作を関連付けることができます。ファイル セットに含まれるすべてのファイルに対して次の動作を指定した場合、ファイルに対してオプション -generate-results-for を使用するときと同じ効果を得られます。

    <show-results value="true"/>
    オプション -classification では、?* などのワイルドカード文字を使用してファイルおよびフォルダー パターンを指定できます。詳細は、次を参照してください。

コマンド ライン情報

パラメーター: -generate-results-for
値: source-headers | all-headers | custom=file1[,file2[,...]] | custom=folder1[,folder2[,...]]
例 (Bug Finder): polyspace-bug-finder -lang c -sources file_name -misra2 required-rules -generate-results-for custom="C:\usr\include"
例 (Code Prover): polyspace-code-prover -lang c -sources file_name -misra2 required-rules -generate-results-for custom="C:\usr\include"
例 (Bug Finder Server): polyspace-bug-finder-server -lang c -sources file_name -misra2 required-rules -generate-results-for custom="C:\usr\include"
例 (Code Prover Server): polyspace-code-prover-server -lang c -sources file_name -misra2 required-rules -generate-results-for custom="C:\usr\include"

バージョン履歴

R2016a で導入