1

(C++ プログラムのコンパイル中に) 警告の総数が 10 を超える場合、さらにコンパイルを停止し、エラーを発生させることをコンパイラに「伝える」ことは可能ですか? または、clang のようなコンパイラをハックしてこの機能を提供することは可能ですか。

4

3 に答える 3

3

GCC には、gnu online docsから、これを実現する 2 つのオプションがあります。

-Werror
すべての警告をエラーにします。

-fmax-errors=n エラー メッセージの最大数を n に制限します。この時点で、GCC はソース コードの処理を続行しようとするのではなく、ベイル アウトします。

これにより、警告のあるビルドは失敗しますが、オプションは解析をいつ停止するかを定義するだけです。

于 2013-04-26T20:44:06.567 に答える
2

gcc や clang でこの種の機能は見たことがありません。もちろん、どちらにもパッチを当てることができます。どちらもオープン ソースです。-Werror単純に警告をエラーとして扱う (両方のコンパイラで受け入れられる) ものもあります。

于 2013-04-26T20:42:20.117 に答える
2

-Werror警告をエラーにしたり、 -fmax-errors=nを使用して制限を設定したりするのはどうですか。(また、コードを完全に警告なしにすることは良いことかもしれません)。

于 2013-04-26T20:42:31.377 に答える