2008-10-20 7 views
6

Я хотел бы, чтобы мои предупреждения были установлены на самый высокий уровень с использованием компилятора Microsoft Visual C++. Подобно использованию -pedantic в gcc. Какие переключатели компилятора вы используете для включения большинства предупреждений?Есть ли эквивалент -pedantic для gcc при использовании компилятора Microsoft Visual C++?

ответ

8

Самый высокий уровень предупреждения на Visual C++ - это/Wall. Уровень предупреждения также может быть установлен численно с помощью/W0,/W1, .../W4, чтобы генерировать увеличивающиеся уровни предупреждений.

Компилятор также проверит наличие проблем с переносимостью на 64 бита с помощью/Wp64.

И вы можете сказать ему, чтобы лечить предупреждения как ошибки с/WX

Visual C++, кажется, не имеют реальный эквивалент -pedantic - который просит GCC сообщать все предупреждения, необходимые для сообщать, ISO C и C++.

2

Обратите внимание, что/Wp64 не рекомендуется Microsoft, а не компилировать непосредственно для 64-битной платформы, если это возможно.

Также обратите внимание, что в редакции Team Developer есть опция/analysis, которая добавляет семантическую проверку на наличие распространенных ошибок кода. Вы также можете взглянуть на получение PC-lint от gimpel для дополнительной семантической проверки.

+0

Правильная информация заключается в том, что, если возможно, компиляция непосредственно для 64-битной платформы предпочтительнее использовать параметр/Wp64. – 2008-10-21 01:08:47

4

AS billmcc64 mentioned, gcc -pedantic вызывает gcc предупреждать, если вы используете какие-либо нестандартные расширения. Я не думаю, что вы можете заставить MSVC предупреждать о подобной ситуации, но вы можете заставить ее генерировать ошибку для этих ситуаций, используя параметр/Za.