我使用gcc 4.5.1并收到警告:
warning: expected [error|warning|ignored] after '#pragma GCC diagnostic'
原因是“#pragma GCC诊断推送”,GCC不存在< 4.6。
我无法更改代码(不是我的代码)和gcc版本。 如何禁用这些警告?一些gcc标志可能是?
P.S。我看到Why "pragma GCC diagnostic push" pop warning in GCC/C++?,我的问题没有答案。
答案 0 :(得分:8)
gcc有两个标志来控制有关pragma的警告:
<强> -Wunknown pragma的强> 遇到GCC无法理解的“#pragma”指令时发出警告。如果使用此命令行选项,则警告为 甚至在系统中发布了未知的pragma 头文件。如果警告仅由-Wall命令行选项启用,则情况并非如此。
<强> -Wno pragma的强> 不要警告错误使用pragma,例如参数不正确,语法无效或pragma之间的冲突。也可以看看 -Wunknown-PR
您可以使用-Wno-unknown-pragmas
关闭它们。
答案 1 :(得分:0)
这似乎是您的选择:
http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html有相关的警告信息。