Last Update 2021/10/12
-Wcomment(-Wcomments)
コメント中に「/*」が出現したり、行コメント「//」の行末が「バックスラッシュ + 改行」であるなどした場合に警告
テスト概要
オプション無し、-Wcomment、-Wcomments、-Wallの各オプションを使用した際の警告出力例
実行環境
GCC-8.2.0
GNU C Library 2.28
GNU Binutils 2.31.1
GNU C Library 2.28
GNU Binutils 2.31.1
コード例・出力内容中の表記
・実行例中の太字表記部分は、コマンドなどの入力された文字列を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。
使用ファイル
sample.c
#include <stdio.h>
int main(void)
{
/* コメント間に「/*」を記述 */
// 行コメント末尾がバックスラッシュ + 改行 \
printf("sample\n");
return 0;
}
動作テスト
オプション無しでコンパイルを実行
$ gcc sample.c 警告無し
$
-Wcommentオプションを指定してコンパイルを実行
$ gcc -Wcomment sample.c
sample.c: In function ‘main’:
sample.c:5:26: warning: "/*" within comment [-Wcomment]
/* コメント間に「/*」を記述 */
sample.c:7:2: warning: multi-line comment [-Wcomment]
// 行コメント末尾がバックスラッシュ + 改行 \
^
$ コメント中の「/*」、および行コメント末尾のバックスラッシュによる複数行化への警告
-Wcommentsオプションを指定してコンパイルを実行
$ gcc -Wcomments sample.c
sample.c: In function ‘main’:
sample.c:5:26: warning: "/*" within comment [-Wcomment]
/* コメント間に「/*」を記述 */
sample.c:7:2: warning: multi-line comment [-Wcomment]
// 行コメント末尾がバックスラッシュ + 改行 \
^
$ -Wcommentオプションと同じ内容の警告出力
-Wallオプションを指定してコンパイルを実行
$ gcc -Wall sample.c
sample.c: In function ‘main’:
sample.c:5:26: warning: "/*" within comment [-Wcomment]
/* コメント間に「/*」を記述 */
sample.c:7:2: warning: multi-line comment [-Wcomment]
// 行コメント末尾がバックスラッシュ + 改行 \
^
$ -Wcommentオプションは-Wallでも有効となる