diag、Qdiag

診断情報の表示を制御します。

IDE オプション

Windows: [Diagnostics (診断)] > [Disable Specific Diagnostics (特定の診断を無効にする)] (/Qdiag-disable:id)

[Diagnostics (診断)] > [Level of Static Security Analysis (スタティック・セキュリティー解析のレベル)] (/Qdiag-enable:sc{1|2|3} )

Linux: [Compilation Diagnostics (コンパイル診断)] > [Disable Specific Diagnostics (特定の診断を無効にする)] (-diag-disable id)

[Compilation Diagnostics (コンパイル診断)] > [Level of Static Security Analysis (スタティック・セキュリティー解析のレベル)] (-diag-enable sc{1|2|3} or -diag-disable sv)

Mac OS X: [Diagnostics (診断)] > [Disable Specific Diagnostics (特定の診断を無効にする)] (-diag-disable id)

[Diagnostics (診断)] > [Level of Static Security Analysis (スタティック・セキュリティー解析のレベル)] (-diag-enable [sc1,sc2,sc3])

アーキテクチャー

IA-32、インテル® 64 アーキテクチャー

構文

Linux* および Mac OS* X:

-diag-type diag-list

Windows:

/Qdiag-type:diag-list

引数

type

診断に対して行う処理です。設定可能な値は以下のとおりです。

enable

診断メッセージまたはメッセージのグループを有効にします。

disable

診断メッセージまたはメッセージのグループを無効にします。

error

診断をエラーに変更するようコンパイラーに指示します。

warning

診断を警告に変更するようコンパイラーに指示します。

remark

診断をリマーク (コメント) に変更するようコンパイラーに指示します。

diag-list

診断グループまたは ID の値です。設定可能な値は以下のとおりです。

driver

コンパイラー・ドライバーによって発行される診断メッセージを指定します。

port-linux

Linux に移植するときにエラーになる可能性のある言語機能に対する診断メッセージを指定します。この診断グループは、Windows* システムでのみ利用できます。

port-win

Windows に移植するときにエラーになる可能性のある GNU 拡張機能に対する診断メッセージを指定します。この診断グループは、Linux* および Mac OS* X システムでのみ利用できます。

thread

プログラムのスレッド化に役立つ診断メッセージを指定します。

vec

ベクトライザーによって発行される診断メッセージを指定します。

par

自動パラレライザー (並列最適化機構) によって発行される診断メッセージを指定します。

openmp

OpenMP* 並列化によって発行される診断メッセージを指定します。

sc[n]

スタティック・セキュリティー解析を有効にし、発行する診断メッセージのレベルを指定します。n は 1、2、3 のいずれかです。これらの値についての詳細は、下記を参照してください。これは、古い値 sv[n] に相当します。

warn

重要度が "warning" (警告) の診断メッセージを指定します。

error

重要度が "error" (エラー) の診断メッセージを指定します。

remark

リマークまたはコメントの診断メッセージを指定します。

cpu-dispatch

診断メッセージの CPU ディスパッチ・リマークを指定します。デフォルトでは、これらのリマークは有効です。

id[,id,...]

1 つまたは複数のメッセージの ID を指定します。複数のメッセージ ID を指定する場合は、各メッセージ ID をカンマで区切る必要があります。各 "id" の間にはスペースを入れないでください。

tag[,tag,...]

1 つまたは複数のメッセージの簡略名を指定します。複数の簡略名を指定する場合は、各簡略名をカンマで区切る必要があります。各 "tag" の間にはスペースを入れないでください。

デフォルト

オフ

デフォルトでは、コンパイラーは特定の診断メッセージを発行します。

説明

このオプションは、診断情報の表示を制御します。-diag-file (Linux* および Mac OS* X) または /Qdiag-file (Windows*) コンパイラー・オプションが指定されている場合を除き、診断メッセージは stderr に出力されます。

スタティック・セキュリティー解析 で、diag-list の値を "warn" (警告) に設定すると、次の動作が行われます。

次の表に、diag-list の sc で指定可能な値の詳細を示します。

diag-list の項目

説明

sc[n]

スタティック・セキュリティー解析 のメッセージの n では、次の値を指定できます。

1

すべてのクリティカル・エラーの診断を出力します。

2

すべてのエラーの診断を出力します。n が指定されない場合のデフォルトの値です。

3

すべてのエラーと警告の診断を出力します。

スタティック・セキュリティー解析を無効にするには、/Qdiag-disable:sc (Windows*) または -diag-disable sc (Linux* および Mac OS* X) を指定します。

ベクトライザーによって通知される診断情報を制御するには、-vec-report (Linux* および Mac OS* X) または /Qvec-report (Windows*) オプションを使用します。

自動パラレライザーによって通知される診断情報を制御するには、-par-report (Linux* および Mac OS* X) または /Qpar-report (Windows*) オプションを使用します。

代替オプション

enable vec

Linux* および Mac OS* X: -vec-report

Windows*: /Qvec-report

disable vec

Linux* および Mac OS* X: -vec-report0

Windows*: /Qvec-report0

enable par

Linux* および Mac OS* X: -par-report

Windows*: /Qpar-report

disable par

Linux* および Mac OS* X: -par-report0

Windows*: /Qpar-report0

次の例は、診断 ID 117、230、および 450 を有効にします。

-diag-enable 117,230,450     ! Linux* および Mac OS* X システム
/Qdiag-enable:117,230,450    ! Windows* システム

次の例は、ベクトライザー診断メッセージを警告に変更します。

-diag-enable vec -diag-warning vec      ! Linux* および Mac OS* X システム
/Qdiag-enable:vec /Qdiag-warning:vec    ! Windows* システム

警告に変更する前に、ベクトライザー診断を有効にする必要があります。

次の例は、すべての自動パラレライザー診断メッセージを無効にします。

-diag-disable par     ! Linux* および Mac OS* X システム
/Qdiag-disable:par    ! Windows* システム

次の例は、すべてのクリティカル・エラーに対してスタティック・セキュリティー解析の診断メッセージを出力します。

-diag-enable sc1      ! Linux* および Mac OS* X システム
/Qdiag-enable:sc1     ! Windows* システム

次の例は、スタティック・セキュリティー解析 の診断 (およびデフォルトの診断) をファイルに出力します。

-diag-enable sc -diag-file=stat_ver_msg   ! Linux* および Mac OS* X システム 
/Qdiag-enable:sc /Qdiag-file:stat_ver_msg ! Windows* システム

ファイルに出力する前に、スタティック・セキュリティー解析 の診断を有効にする必要があります。この場合、診断は stat_ver_msg.diag ファイルに出力されます。ファイル名が指定されていない場合は、診断結果は name-of-the-first-source-file.diag に送られます。

次の例は、すべての警告とリマークをエラーに変更します。

-diag-error warn,remark    ! Linux* および Mac OS* X システム
/Qdiag-error:warn,remark   ! Windows* システム

関連情報


このヘルプトピックについてのフィードバックを送信

© 1996-2010 Intel Corporation. 無断での引用、転載を禁じます。