相关疑难解决方法(0)

如何从库头中抑制GCC警告?

我有一个项目使用log4cxx,boost等库,其头文件生成大量(重复)警告.有没有办法抑制来自库包含的警告(即#include <some-header.h>)或包含某些路径?我希望像往常一样在项目代码中使用-Wall和/或-Wextra而不会隐藏相关信息.我目前在make输出上使用grep,但我想要更好的东西.

gcc warnings suppress-warnings gcc-warning

119
推荐指数
6
解决办法
4万
查看次数

如何使用带有gcc的#pragma选择性地禁用-Werror

在我寻求免费警告应用程序时,我已经开始使用-Werror来告诉gcc将所有警告视为错误.

这确实非常有用,因为有时我在大型构建输出中错过了一两个(严重)警告.不幸的是,我的项目使用的sqlite3包含许多警告,如sqlite网站中所述,无法消除(他们不想删除).

我想知道是否有一种方法可以使用一些#pragma我可以放在sqlite3.c文件中告诉gcc停止将警告视为仅对该文件的错误.

我尝试过:

#pragma GCC diagnostic ignored "-Werror"
Run Code Online (Sandbox Code Playgroud)

没有成功我也试图逐个列出导​​致问题的警告:

#pragma GCC diagnostic ignored "-Wextra"
#pragma GCC diagnostic ignored "-Wfloat-equal"
#pragma GCC diagnostic ignored "-Wundef"
...
Run Code Online (Sandbox Code Playgroud)

...遗憾的是,有些警告无法完全关闭(即初始化会从指针目标类型中丢弃限定符).

有什么想法/建议?

c sqlite gcc

5
推荐指数
1
解决办法
836
查看次数

C++编译指示GCC system_header指令

这个C++指令的作用是什么:"#pragma GCC system_header"?

c++ gcc pragma

4
推荐指数
2
解决办法
3758
查看次数

标签 统计

gcc ×3

c ×1

c++ ×1

gcc-warning ×1

pragma ×1

sqlite ×1

suppress-warnings ×1

warnings ×1