Есть ли эквивалент для -pedantic для gcc при использовании компилятора Microsoft Visual C ++?

StackOverflow https://stackoverflow.com/questions/220298

  •  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 должны помочь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top