1

私はclang-llvmをテストして、生徒がプログラムするマシンに追加するために学校のIT部門に言及する価値があるかどうかを確認しています。すべての割り当てで、を使用してコンパイルする必要があるg++ -Wall -W -pedantic-errors *.cppため、コマンドをに変換しましたclang++ -Wall -W -pedantic-errors。予期していなかった出力が得られました。

Attempting to compile...
In file included from test_library.cpp:6:
In file included from ./test_library.h:64:
In file included from ./library.h:167:
./library.hpp:20:23: warning: unused variable 'e' [-Wunused-variable]
    catch(Exception & e)
                      ^

一方、GCCコンパイラはcatchブロック内の未使用の変数についてエラーを出しません。コマンドをg++と同様に保ちながら、Clangがtry / catchブロック内の未使用の変数について気が狂わないようにするためにできることはありますか?

Clang-LLVM(v2.7)GNU GCC(v4.4.4)Fedora 13

4

2 に答える 2

5

私はマイクに少し同意しますが、地面から降りるために、これを試してください:

clang++ -Wall -W -pedantic-errors -Wno-unused-variable

私はllvmをあまり使用していませんが、診断のポイントは、警告をでシャットダウンできることを通知することだと思います[-Wunused-variable]-Wno-unused-variable

于 2010-09-20T23:49:06.147 に答える
3

変数を使用していない場合、「catch(Exception&)」で例外をキャッチすることの何が問題になっていますか?あなたのコンパイラとあなたのコードレビュアーはもっと幸せになるでしょう。

于 2010-09-21T01:58:37.210 に答える