gcc如何抑制不兼容的指针类型警告?

时间:2015-12-06 10:48:13

标签: gcc warnings compiler-warnings

在我们的项目中,警告被视为错误。此规则适用于顶级makefile。

我想取消第三方代码的警告。

将参数传递给函数调用时,我收到“不兼容的指针类型”警告。

我尝试了“-Wno-incompatible-pointer-types”。但是,编译器不支持它。

我正在使用gcc.c4.2.1-p4.ppc-linux。

有人可以告诉我如何抑制这种“不兼容的指针类型”警告吗?

2 个答案:

答案 0 :(得分:2)

我查看过GCC(https://gcc.gnu.org/onlinedocs/)的文档。选项" -Wno-incompatible-pointer-types"最新的GCC 4.x版本尚未提供,但从第一个GCC 5.x版本开始提供。

由于您使用的是GCC 4.2.1版,因此无法使用选项" -Wno-incompatible-pointer-types"然而。请迁移到GCC 5.x或更高版本。

答案 1 :(得分:1)

您不需要为整个项目禁止所有不兼容的指针类型警告,因为您无法控制某些第三方代码。相反,请考虑抑制因处理此第三方代码而导致的所有警告,同时保留对您自己的代码的所有警告。

您可以通过将第三方标头指定为"系统标头"来执行此操作。海湾合作委员会有一个选择。不要使用-I参数传递第三方标头,而是使用-isystem。系统标题由GCC专门处理,不会为它们生成警告(不包括由#pragma warning引起的警告)。