Sun Studio 12 Update 1: C++ ユーザーズガイド

A.2.17.1 値

t には、次の 1 つまたは複数の項目をコンマで区切って指定します。tagno%tag%all%none。このとき、順序が重要になります。たとえば、%all,no%tag と指定すると、tag 以外のすべての警告メッセージが生成された場合に、重大なエラーを出力して cc を終了します。

-errwarn の値を次の表に示します。

表 A–4 -errwarn の値

値 

意味  

tag

tag に指定されたメッセージが警告メッセージとして発行されると、CC は致命的エラーステータスを返して終了します。tag; に指定されたメッセージが発行されない場合は無効です。

no%tag

tag に指定されたメッセージが警告メッセージとしてのみ発行された場合に、CC が致命的なエラーステータスを返して終了しないようにします。tag に指定されたメッセージが発行されない場合は無効です。このオプションは、tag または %all を使用して以前に指定したメッセージが警告メッセージとして発行されても cc が致命的エラーステータスで終了しないようにする場合に使用してください。

%all

警告メッセージが 1 つでも発行されると CC は致命的ステータスを返して終了します。%all に続いて no%tag を使用して、特定の警告メッセージを対象から除外することもできます。

%none

どの警告メッセージが発行されても CC が致命的エラーステータスを返して終了することがないようにします。

デフォルト

デフォルトは -errwarn=%none です。-errwarn だけを指定した場合、-errwarn=%all を指定したことと同じになります。

警告

-errwarn オプションを使用して、障害状態で C++ コンパイラを終了するように指定できるのは、C++ コンパイラのフロントエンドで -errtags オプションを指定したときにタグを表示する警告メッセージだけです。

C++ コンパイラで生成される警告メッセージは、コンパイラのエラーチェックの改善や機能追加に応じて、リリースごとに変更されます。-errwarn=%all を指定してエラーなしでコンパイルされるコードでも、コンパイラの次期リリースではエラーを出力してコンパイルされる可能性があります。

関連項目

-erroff-errtags-xwe