C制作文件-Wno-unused-parameter标志

Posted

技术标签:

【中文标题】C制作文件-Wno-unused-parameter标志【英文标题】:C make file -Wno-unused-parameter flag 【发布时间】:2014-04-13 14:20:45 【问题描述】:

我正在尝试在 Linux 内核中编译一些 C 代码。 我有一个巨大的项目,编译时没有任何警告。编译行非常长且复杂。

在项目中,编译器不会警告那些未使用的函数签名中的变量(即使它包含诸如 -Wall 之类的标志)。如:

void foo (int a) 

我不明白为什么它不会发出警告。 所以我通过运行检查了原始项目的实际编译行:

make -n

它没有取消此警告的标志 -Wno-unused-parameter。

有人知道取消此警告的标志吗?可能是包含 -Wno-unused-parameter 标志的不同标志?

谢谢

马特

【问题讨论】:

警告 -Wunused-parameter,在 gcc 版本 4.2.1 中,不是 -Wall 的一部分。 -Wall 标志的名称选择不当。当然,它的名字暗示 all 警告已启用——但这只是一个谎言。我不确定-Wextra 是否会接受其他所有内容,或者只是更多,但这至少是一个开始。 @mah: -Wextra 确实包括 -Wunused-parameter 是的,-Wextra 确实包含 -Wunused-parameter,但请记住,只有在与 -Wunused-Wall 一起使用时才会启用后者。 【参考方案1】:

根据Warning Options - Using the GNU Compiler Collection (GCC),-Wall 没有启用-Wunused-parameter,所以这个警告并没有神秘地取消,而是根本没有启用。

【讨论】:

以上是关于C制作文件-Wno-unused-parameter标志的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 中使用两个 swift 文件和一个 Objective C 文件制作 ScollView

制作:c:找不到命令

c_cpp 制作包含随机内容的大文件

制作:*** 制作文件。停止

如何在 C 中制作 Siren 噪声 wav 文件?

C制作文件-Wno-unused-parameter标志