缺少return语句时出错

时间:2010-08-15 10:26:29

标签: gcc compiler-errors return

如何在GCC下为缺少的return语句生成错误?

cpfsfuse.c:184: warning: no return statement in function returning non-void

我能够为隐式函数声明(-Werror-implicit-function-declaration)返回错误,并且我知道-Werror=开关,但我无法找到适当的警告来提升错误状态

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:18)

您应该可以使用-fdiagnostics-show-option选项显示Werror=开关的正确标记。取自this博文:

% gcc -x c -Wall -Wextra -fdiagnostics-show-option -c -o /dev/null - <<EOF
int foo() {
}
EOF
<stdin> In function ‘foo’:
<stdin>:2: warning: control reaches end of non-void function [-Wreturn-type]

实际上,看起来return-type标志可能是您想要的标志。