/w、/Wn、/WX、/Wall、/wln、/wdn、/wen、/won (警告レベル)
更新 : 2007 年 11 月
コンパイルの警告の生成方法を指定します。
/w
/Wn
/WX
/Wall
/wln
/wdn
/wen
/won
解説
これらのオプションおよび関連する引数の説明を次の表に示します。
オプション |
説明 |
---|---|
/w |
すべてのコンパイラ警告を無効にします。 |
/Wn |
コンパイラで生成される警告の最も高いレベルを指定します。n には、警告レベル 0 ~ 4 を指定できます。
新規プロジェクトの場合は、すべてのコンパイルで /W4 を使用するのが最適です。/W4 を使用すると、見つかりにくいコードの欠陥が最小限になります。 |
/Wall |
既定で無効になっている警告も含めて、すべての警告を有効にします。「Compiler Warnings That Are Off by Default」を参照してください。 |
/WX |
すべてのコンパイラ警告をエラーとして扱います。新規プロジェクトの場合は、すべてのコンパイルで /WX を使用するのが最適です。すべての警告を解決すると、見つかりにくいコードの欠陥が最小限になります。 リンカにも /WX オプションがあります。詳細については、「/WX (リンカ警告をエラーとして扱う)」を参照してください。 |
/wln |
特定の警告のレベルを指定します。最初のパラメータは警告レベルを設定し (/Wn と同じ)、2 番目のパラメータは実際の警告番号です。 たとえば、/w14326 と指定すると、C4326 をレベル 1 の警告として生成します。 |
/wdn |
指定したコンパイラの警告を無効にします。nは、コンパイラの警告番号です。 たとえば、/wd4326 と指定すると、コンパイラの警告 C4326 が無効になります。 |
/wen |
指定したコンパイラの警告をエラーとして扱います。n は、コンパイラの警告です。 たとえば、/we4326 と指定すると、警告番号 C4326 をエラーとしてフラグ設定します。 |
/won |
n に指定したコンパイラの警告を 1 回だけ報告します。 たとえば、/wo4326 と指定すると、警告 C4326 は 1 回だけ報告されます。 |
いずれかの /w オプションを使ってプリコンパイル済みヘッダーを作成した場合 (/Yc (プリコンパイル済みヘッダー ファイルの作成)) は、プリコンパイル済みヘッダーの使用時 (/Yu (プリコンパイル済みヘッダー ファイルの使用)) に同じ /w オプションが再び有効になります。コマンド ラインで別の /w オプションを指定すると、プリコンパイル済みヘッダーの /w の設定よりも優先されます。
ソース コードのプラグマ ディレクティブは、/w オプションの影響を受けません。
warning を使用して、コンパイル時に報告される警告レベルを制御することもできます。
「C/C++ ビルド エラー」は、警告について説明し、各警告のレベルを示し、実際のコーディング エラーではなく、コンパイルしないステートメントに関する潜在的な問題点を示します。
Visual Studio 開発環境でこのコンパイラ オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。詳細については、「方法 : プロジェクト プロパティ ページを開く」を参照してください。
[C/C++] フォルダをクリックします。
[全般] プロパティ ページをクリックし、[警告レベル] プロパティまたは [警告をエラーとして表示] プロパティを変更します。
[詳細] プロパティ ページをクリックし、[特定の警告を無効にする] プロパティを変更します。
残りのオプションについては、[コマンド ライン] プロパティ ページをクリックし、[追加のオプション] ボックスにコンパイラ オプションを入力します。
このコンパイラ オプションをコードから設定するには
- 「WarningLevel」、「WarnAsError」、「DisableSpecificWarnings」、および「AdditionalOptions」を参照してください。