如何使用clang使未使用的命令行参数错误静音而不禁用它?

时间:2014-02-07 00:41:57

标签: c clang

当使用带有clang的-Werror时,它会将“警告:编译期间未使用的参数”消息转换为错误,这是有道理的。有-Qunused-arguments标志可以完全消除它们。我的问题是,是否有一些-Wno-error=...标志我可以通过以使这些不是错误,而不是完全禁用它们?

5 个答案:

答案 0 :(得分:23)

原来答案是-Wno-error=unused-command-line-argument

答案 1 :(得分:2)

您也可以使用此命令:

-Wno-unused-command-line-argument

答案 2 :(得分:1)

就我而言,在./configure中使用clang-8编译器时,autoconf存在类似问题。

*clang-8: error: unknown argument: '-ftree-loop-distribute-patterns'*
*clang-8: error: unknown argument: '-fno-semantic-interposition'*

我需要以下命令行来修复这些错误:

./configure CC=clang-8 CXX=clang++-8 LD=clang++-8 CFLAGS=-Qunused-arguments

希望这对其他人有帮助。

答案 3 :(得分:0)

在Visual Studio 2019中,打开C ++项目的属性页面,然后转到``配置属性''->``C / C ++''->``命令行''。

在“其他选项”文本框中,粘贴

  

-Wunused-命令行参数

针对每个配置/平台组合执行此操作。这对我有用,仅关闭此警告。

答案 4 :(得分:-1)

#pragma clang diagnostic ignored "-Wunused-parameter"