警告メッセージを非表示にするときやリマーク・メッセージ機能を有効にするには、前処理やコンパイルの各フェーズで -w オプションか -Wn オプションを使用します。このオプションは、次のいずれかの引数とともに入力できます:
オプション | 説明 |
---|---|
-w0 | エラーを表示します (-w と同じ) |
-w1 | 警告とエラーを表示します (デフォルト) |
-w2 | リマーク、警告、エラーを表示します |
不正な箇所がコードに含まれていても、それについて既に把握しているときや実際には問題のないとき (K&R の C 構造など) にまで警告メッセージを表示させたくない場合があります。例えば、次のコマンドを実行すると、newprog.cpp がコンパイルされ、コンパイラ・エラーは表示されますが、警告メッセージは出力されません:
prompt>icpc -W0 newprog.cpp
特定の診断結果を示すには、-ww、-we、または -wd オプションを使用します。
オプション | 説明 |
---|---|
-wwL1[L2,...,Ln] | L1 か らLN までの診断結果の重要度を警告に変更します。 |
-weL1[L2,...,Ln] | L1 か らLN までの診断結果の重要度をエラーに変更します。 |
-wdL1[L2,...,Ln] | L1 から LN までの診断を禁止します。 |
例
/* test.c */
int main() { int x=0; } |
-Wall オプション (すべての警告を有効にする) を使用して上記の test.c をコンパイルした場合、コンパイラは警告 #177 を出力します:
prompt>icc -Wall test.c
remark #177: variable 'x' was declared but never referenced
警告 #177 を出力しないようにするには、-wd オプションを使用します:
prompt>icc -Wall -wd177 test.c
同様に、-we オプションを使用するとコンパイル時にエラーが出力されます:
prompt>icc -Wall -we177 test.c
error #177: variable 'x' was declared but never referenced
compilation aborted for test.c