与SunStudio11捆绑在一起的STLport会生成很多警告。我相信大多数编译器都有办法禁用来自某些源文件的警告,就像这样:
Sun C
#pragma error_messages off
#include <header.h>
// ...
#pragma error_messages ongcc
#pragma warning(push, 0)
#include <header.h>
// ...
#pragma warning(pop)如何在SunStudio C++编译器中执行此操作?(顺便说一句,sunstudio C编译指示在sunstudio C++中不起作用)
发布于 2009-04-22 10:55:19
在SunStudio 12中,# error_messages的工作方式如C用户手册中所述。
您可以使用-errtags=yes选项查看标签,并按如下方式使用它:
// Disable badargtypel2w:
// String literal converted to char* in formal argument
#pragma error_messages (off, badargtypel2w )然后使用CC ( C++编译器)进行编译。
发布于 2009-07-09 23:08:41
如果您更喜欢使用命令行选项而不是#杂注,一个简单的答案是您可以使用-erroff=%all on your compile line.
您可以使用-erroff=%tag隐藏特定的警告消息
您可以通过将-errtags添加到编译行来打印出警告消息的标记。然后,您可以为-erroff定义一组逗号分隔值,仅禁止显示这些标记。
有关详细信息,请参阅http://docs.oracle.com/cd/E19205-01/820-7599/bkapa/index.html。
请注意,Sun Studio12更新1现在可用,我在这里引用的是SS12u1文档。
发布于 2009-02-11 15:56:06
我无能为力地关闭了警告,但当我上次查看SunStudio时,它附带了两个STLs一个较旧的STL用于向后兼容较早的编译器版本和STLport。在尝试关闭警告之前,可能值得检查一下您是否正在使用STLport。
https://stackoverflow.com/questions/537374
复制相似问题