当我使用 GCC 编译一个 C(无优点)程序时,可能有多个级别的消息,如警告、错误和注释。便条消息是无用的和分散注意力的。如何使用命令行让它们消失?(我不使用任何类型的 IDE。)
示例:/home/user/src9/AllBack3.c:129:9:注意:每个未声明的标识符对于它出现的每个函数只报告一次。
当我使用 GCC 编译一个 C(无优点)程序时,可能有多个级别的消息,如警告、错误和注释。便条消息是无用的和分散注意力的。如何使用命令行让它们消失?(我不使用任何类型的 IDE。)
示例:/home/user/src9/AllBack3.c:129:9:注意:每个未声明的标识符对于它出现的每个函数只报告一次。
-fcompare-debug-second
将选项传递给gcc
.gcc 的内部 API 有一个
diagnostic_inhibit_note()
功能可以关闭任何“note:”消息,但这只能通过此处-fcompare-debug-second
定义的意外命令行开关进行服务。幸运的是,关闭注释是它唯一的作用,除非还使用了
-fcompare-debug
或-fdump-final-insns
选项,这仅用于调试编译器本身。您可以使用
-w
which 也抑制警告。对于 GCC,
-w
不会抑制您提到的注释,可能是因为它显示而不是另一个错误。-w
另一方面,clang也抑制了这一点。