Есть ли эквивалент для -pedantic для gcc при использовании компилятора Microsoft Visual C ++?
-
03-07-2019 - |
Вопрос
Я бы хотел, чтобы мои предупреждения были на самом высоком уровне с использованием компилятора Microsoft Visual C ++. Аналогично использованию -pedantic в gcc. Какие ключи компилятора вы используете, чтобы включить большинство предупреждений?
Решение
Наивысшим уровнем предупреждения в Visual C ++ является / Wall. Уровень предупреждения также может быть установлен численно с помощью / W0, / W1, ... / W4, чтобы генерировать увеличивающиеся уровни предупреждений.
Компилятор также проверит наличие 64-битных проблем с переносимостью с / Wp64.
И вы можете указать, чтобы предупреждения воспринимались как ошибки с / WX
Visual C ++, похоже, не имеет реального эквивалента -pedantic - который просит gcc сообщить обо всех предупреждениях, которые должны быть представлены в соответствии со стандартами ISO C и C ++. Р>
Другие советы
AS упомянутая billmcc64 , gcc -pedantic заставляет gcc предупреждать, если вы используете какие-либо нестандартные расширения. Я не думаю, что вы можете заставить MSVC предупреждать о подобной ситуации, но вы можете заставить его генерировать ошибку для этих ситуаций, используя параметр / Za.
Обратите внимание, что / Wp64 не рекомендуется Microsoft, в отличие от компиляции напрямую для 64-битной платформы, если это возможно.
Также обратите внимание, что в выпуске Team Developer есть опция / analysis, которая добавляет семантическую проверку для распространенных ошибок кода. Вы также можете посмотреть на получение PC-lint от gimpel для дополнительной семантической проверки.
если вы хотите что-то наподобие -pedantic, попробуйте хороший текст, например, pc-lint ( http: //www.gimpel.com/html/products.htm ). р>
/ W4 / Wall
должны помочь.