ここでは、コンパイラーのリマーク、警告、およびエラーについて説明します。インテル(R) C++ コンパイラーは、これらのメッセージとともに、エラーを含むソース行も標準出力に出力します。
リマークとは、C/C++ で一般的によく使用されるが実際には規約に違反している恐れのある用法を報告するメッセージです。-w2 オプションを指定しない限り、リマークメッセージは出力も表示もされません。リマークメッセージが表示されても、変換もリンクも停止されません。また、リマークメッセージが表示されても出力ファイルは影響を受けません。次に、リマークメッセージの代表例をいくつか示します。
警告とは、C/C++ の規約には沿っているが、プログラミング言語の用法として問題のある部分を報告するメッセージです。デフォルトでは、コンパイラーは警告を表示します。-w コンパイラー・オプションを使用すると、すべての警告メッセージは表示されません。警告メッセージが表示されても、変換もリンクも停止されません。また、警告メッセージが表示されても出力ファイルは影響を受けません。次に、警告メッセージの代表例をいくつか示します。
本バージョンのインテル C++ コンパイラーは、次のオプションをサポートします。
オプション | 結果 |
---|---|
-W[no-]missing-prototypes | プロトタイプの省略の警告 |
-W[no-]pointer-arith | 疑わしいポインター計算の警告 |
-W[no-]uninitialized | 初期化する前に変数を使用している場合の警告 |
-W[no-]deprecated | 推奨されていない機能に関する警告 |
-W[no-]abi | 生成されたコードが C++ ABI 規格に準拠していない場合の警告 |
-W[no-]unused-function | 宣言された関数が使用されていない場合の警告 |
-W[no-]unknown-pragmas | #pragma 宣言子が使用された場合の警告 |
-W[no-]main | メインの戻り型が予想と一致しない場合の警告 |
-W[no-]comment[s] | /* */ コメントの中央に /* がある場合の警告 |
-W[no-]return-type | 関数でデフォルトの int 戻り型が使用されている場合の警告 void 関数で return 文が使用されている場合の警告 |
C/C++ の用法が構文的または意味的に間違っていることを報告するメッセージです。該当する条件に当たればエラーメッセージは必ず表示されます。エラーメッセージが表示されると、そのエラーを含むモジュールのオブジェクト・コードが止まり、リンクの処理も止まりますが、他にエラーがないかどうかを調べる処理はそのまま続けられます。次に、エラーメッセージの代表例をいくつか示します。
リマーク、警告、およびエラーを制御するには、次のコンパイラー・オプションを使用します。
オプション | 結果 |
---|---|
-w | すべての警告を抑止 |
-w0 | エラーを表示 |
-w1 | 警告とエラーを表示 |
-w2 | リマーク、警告、エラーを表示 |
-Wbrief | 1 行の簡単な診断を表示 |
-Wcheck | より厳密な診断を有効 |