编译时允许的最大警告数

问题描述 投票:0回答:3

是否可以“告诉”编译器,如果警告总数(在编译 C++ 程序时)超过 10 个,则停止进一步编译,并发出错误? 或者是否可以破解像 clang 这样的编译器来提供此功能。

c++ gcc clang
3个回答
3
投票

GCC 有两个选项可以一起实现这一点,来自 gnu 在线文档

-错误
将所有警告变为错误。

-fmax-错误=n 将错误消息的最大数量限制为 n,此时 GCC 会退出而不是尝试继续处理源代码 代码。

这会使带有任何警告的构建失败,这些选项只是定义何时停止解析。


2
投票

我还没有在 gcc 或 clang 中看到过这种功能。您当然可以尝试将其修补到其中任何一个中,两者都是开源的。还有

-Werror
(两个编译器都接受),它只是将警告视为错误。


2
投票

如何使用

-Werror
将警告变为错误并使用 -
fmax-errors=n
设置限制。 (另外,也许让你的代码完全没有警告将是一件好事)。

© www.soinside.com 2019 - 2024. All rights reserved.