我知道我可以把
#pragma GCC diagnostic ignored "<warning>"
到源文件的顶部以抑制与该特定源文件相关的警告。但是,似乎有些名称不够具体。例如,
#pragma GCC diagnostic ignored "-Wwrite-strings"
不会阻止 gcc (4.7.2) 显示未给出确切名称的警告消息,相反,这些消息后仅跟有 [默认启用]。我想我需要知道正确的警告名称,这样我才能在 #pragma
行中使用它们。我试过了
-fdiagnostics-show-option,
但警告仍然显示为[默认启用]。
有什么方法可以识别这些警告或抑制与特定源文件相关的警告吗?
非常感谢!
最佳答案
您必须推送和弹出诊断状态。像这样:
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-function"
/* ignoring warning */
int unused_function( void ) {
return 1337;
}
#pragma GCC diagnostic pop
关于c - 海湾合作委员会,C : Finding out name of default warnings for use in #pragma ignore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15997634/