Я тестировал clang-llvm, чтобы узнать, стоит ли упоминать ИТ-отдел моей школы, чтобы добавить его к машинам, на которых мы участвуем. Для всех наших заданий мы должны скомпилировать с использованием g++ -Wall -W -pedantic-errors *.cpp
, поэтому я просто преобразовал команду в clang++ -Wall -W -pedantic-errors
. Я получил некоторый вывод, что я не ожидал:Неожиданный вывод от Clang
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 компилятор не выдаст ошибку о неиспользуемых переменных в блоке поймать. Есть ли что-нибудь, что я могу сделать, чтобы Clang не волновался о неиспользуемых переменных в блоках try/catch, сохраняя при этом команду, похожую на g ++?
Clang-LLVM (v2.7) GNU GCC (v4.4.4) Fedora 13
Вы можете исправить предупреждение. –
В этом отношении есть ли флаг, который я могу предоставить 'gcc', чтобы предупредить об этой неиспользуемой переменной? –
Это должно быть; '-W -Wall' включает все предупреждения о неиспользуемых переменных, которые есть. Возможно, это ошибка g ++. – zwol