默认情况下,gcc/g++ 仅打印带有行号的警告消息。我正在寻找 g++ 或 gcc 将构建警告消息与警告 ID 相关联的选项,以便可以轻松识别警告消息(无需解析)。还有更多选项可以获取更详细的警告信息吗?(虽然我认为每条警告信息本身都可以解释,但只是好奇)
谢谢。
默认情况下,gcc/g++ 仅打印带有行号的警告消息。我正在寻找 g++ 或 gcc 将构建警告消息与警告 ID 相关联的选项,以便可以轻松识别警告消息(无需解析)。还有更多选项可以获取更详细的警告信息吗?(虽然我认为每条警告信息本身都可以解释,但只是好奇)
谢谢。
在 GCC 4.x 中有一个选项“-fdiagnostics-show-option”,它显示用于关闭警告的选项:
$ gcc -fdiagnostics-show-option foo.c -Wall -o foo
foo.c: In function ‘main’:
foo.c:3: warning: unused variable ‘x’ [-Wunused-variable]
foo.c:4: warning: control reaches end of non-void function
如果您需要解析警告,这可能会简化事情(尤其是在存在本地化错误消息的情况下)。
GCC 不提供更改/添加警告消息文本的选项。请参阅联机帮助页中的“控制诊断消息格式的选项”部分。
GCC 也不提供更详细的警告消息。
对不起。
AFAIK,没有这样的选择 - 消息是自我识别的。
GCC 没有警告 ID <-> 消息映射。如果您想过滤特定的警告消息,请使用 CFLAG,例如-Wno-pragmas
或-Wno-oveflow
。完整的标志列表记录在手册页中。