Last Update 2021/09/09
-Wignored-qualifiers
関数の戻り値の型にconstなどの型修飾子がある場合に警告を出力
テスト概要
-Wignored-qualifiersオプションを使用したコンパイル時の警告出力例
-Wextraオプションを使用した場合の-Wignored-qualifiersに関する警告出力例
実行環境
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>
/* 型修飾子constが付いた戻り値 */
const int sampFunc(void)
{
return 0;
}
int main(void)
{
printf("%d\n", sampFunc());
return 0;
}
-Wignored-qualifiersオプションを使用したコンパイル時の警告出力例
オプション無しで実行
$ gcc sample.c エラー・警告無し
$
-Wignored-qualifiersオプションを指定して実行
$ gcc -Wignored-qualifiers sample.c
sample.c:4:1: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
const int sampFunc(void) 「関数の戻り値の型では型修飾子は無視される」の警告
^~~~~
$
-Wextraオプションを使用した場合の-Wignored-qualifiersに関する警告出力例
-Wextraオプションを指定して実行
$ gcc -Wextra sample.c
sample.c:4:1: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
const int sampFunc(void)
^~~~~
$ -Wextraに-Wignored-qualifiersが含まれるため関連する警告を出力