【问题标题】:Set of Warnings as Error g++作为错误 g++ 的警告集
【发布时间】:2013-02-02 16:29:10
【问题描述】:

我想为我的 g++ 编译器更改警告和错误的行为:

  • 我希望将正常警告发现为错误 (-Werror)
  • 我希望发现额外的警告。 (-Wall-Wextra

但我的问题是,这样一来,所有和额外的警告都会出错。有没有一种方法可以实现我想要的,而无需在-Werror=xxx,xxx,xxx 设置一长串列表。
是否有某种错误集的别名?

【问题讨论】:

    标签: c++ compiler-errors g++ compiler-warnings


    【解决方案1】:

    如果你只是给-Werror,所有的警告都会变成错误。除了将您(不想)犯的错误列为-W(no-)error=xxx 之外,我不相信有办法“将一些警告变成错误”。

    当然,一种解决方案可能是编译代码两次——一次使用-Wall-Wextra,一次使用-Werror,但不是-Wall-Wextra

    从长远来看,我相信值得付出额外的努力来标记您(不)希望 -Werror 将哪些错误视为错误 [尽管我认为更好的解决方案可能是使用-Wno-xxx,禁用任何你认为可以接受的警告,而不是“警告但不要让它成为错误”——毕竟,在我看来,-Werror 的目的是防止代码被提交到带有警告的项目 - 这应该意味着两件事之一:警告已修复,或警告已禁用。无论哪个对那个项目有意义]。

    【讨论】:

      【解决方案2】:

      您可以使用-Werror -Wno-error=... 和更短的警告列表(仅限-Wall -Wextra 启用的警告),而不是使用-Werror=... 和一长串警告。手册列出了 -Wall -Wextra 启用了哪些警告,因此很容易。

      【讨论】:

        猜你喜欢
        • 2021-10-11
        • 1970-01-01
        • 1970-01-01
        • 2016-07-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-25
        • 2011-01-05
        相关资源
        最近更新 更多