#pragma info

C に適用 C++ に適用

説明

#pragma info ディレクティブは、特定のグループのコンパイラー・メッセージを作成または抑制するようコンパイラーに指示します。

構文

>>-#--pragma--info--(--+-all-------+--)------------------------><
                       +-none------+
                       +-restore---+
                       | .-,-----. |
                       | V       | |
                       '---group-+-'
 
 

ここで、


all すべての診断検査をオンにします。
none プログラムの特定の部分について、すべての診断サブオプションをオフにします。
restore 直前の #pragma info ディレクティブの前に有効であったオプションを復元します。
group 指定した診断 group に関連付けられるすべてのメッセージを生成または抑制します。以下のリストにある複数の group 名を指定できます。

group
戻される、または抑止されるメッセージのタイプ

c99|noc99
C89 言語レベルと C99 言語レベルの間で異なる動きをする場合がある C コード。

cls|nocls
C++ クラス。

cmp|nocmp
符号なし比較で生じうる冗長度。

cnd|nocnd
条件式で生じうる冗長度または問題。

cns|nocns
定数を含む命令。

cnv|nocnv
型変換。

dcl|nodcl
宣言の整合性。

eff|noeff
効果のないステートメントおよびプラグマ。

enu|noenu
enum 変数の整合性。

ext|noext
未使用の外部定義。

gen|nogen
汎用診断メッセージ。

gnr|nognr
一時変数の生成。

got|nogot
goto 文の使用。

ini|noini
初期設定で起こりうる問題。

inl|noinl
インラインされていない関数。

lan|nolan
言語レベル効果。

obs|noobs
廃止されたフィーチャー。

ord|noord
評価の順序が指定されていない。

par|nopar
未使用パラメーター。

por|nopor
移送不能な言語構造体。

ppc|noppc
プリプロセッサーを使用した場合に起こりうる問題。

ppt|noppt
プリプロセッサー・アクションのトレース。

pro|nopro
欠落関数プロトタイプ。

rea|norea
到達できないコード。

ret|noret
戻りステートメントの整合性。

trd|notrd
データまたは精度の、起こりうる切り捨てまたは欠落。

tru|notru
コンパイラーで切り捨てられた変数名。

trx|notrx
16 進浮動小数点定数の丸め。

uni|nouni
初期化されていない変数。

upg|noupg
現在のコンパイラー・リリースの新しい振る舞いを、前のリリースと対比して示すメッセージを生成する。

use|nouse
未使用の自動変数および静的変数。

vft|novft
C++ プログラムでの仮想関数テーブルの生成。

zea|nozea
ゼロ範囲の配列。

#pragma info ディレクティブを使用すると、コマンド行、構成ファイル、または以前の #pragma info ディレクティブの呼び出しで指定した、現行の -qinfo コンパイラー・オプション設定を一時的にオーバーライドすることができます。

例えば、下記のコード・セグメントで、MyFunction1 の前の #pragma info(eff, nouni) ディレクティブは、効力のないステートメントまたはプラグマを識別するメッセージを生成することと、初期化されていない変数を識別するメッセージを抑制することを、コンパイラーに指示します。 MyFunction2 の前の #pragma info(restore) ディレクティブは、 #pragma info(eff, nouni) ディレクティブが呼び出される前に有効であったメッセージ・オプションを復元するようコンパイラーに指示します。

#pragma info(eff, nouni) 
int MyFunction1()
{
  .
  .
  .
 
}
 
#pragma info(restore)
int MyFunction2()
{
  .
  .
  .
 
}
 

関連参照

IBM Copyright 2003