опция g ++ или gcc для получения предупреждения с идентификатором предупреждения - PullRequest
6 голосов
/ 21 октября 2008

По умолчанию gcc / g ++ печатает предупреждающее сообщение только с номером строки. Я ищу вариант, с помощью которого g ++ или gcc связывает предупреждающие сообщения о сборке с идентификаторами предупреждений, чтобы предупреждающие сообщения можно было легко идентифицировать (без разбора). Также есть ли возможность получить более подробное предупреждающее сообщение? (Хотя я думаю, что каждое из предупреждающих сообщений само по себе является в значительной степени объяснительным, но просто любопытным)

Спасибо.

Ответы [ 4 ]

6 голосов
/ 21 октября 2008

В GCC 4.x есть опция "-fdiagnostics-show-option", которая отображает опцию, используемую для отключения предупреждения:

$ gcc -fdiagnostics-show-option foo.c -Wall -o foo
foo.c: In function ‘main’:
foo.c:3: warning: unused variable ‘x’ [-Wunused-variable]
foo.c:4: warning: control reaches end of non-void function

Если вам нужно разобрать предупреждение, это может упростить ситуацию (особенно при наличии локализованных сообщений об ошибках).

2 голосов
/ 21 октября 2008

GCC не предоставляет возможность изменять / добавлять текст предупреждающих сообщений. См. Раздел «Параметры управления форматированием диагностических сообщений» на странице руководства.

GCC также не предоставляет подробных предупреждений.

Извините.

1 голос
/ 21 октября 2008

GCC не имеет идентификатора предупреждения <-> для отображения сообщения. Если вы хотите отфильтровать определенные предупреждающие сообщения, используйте CFLAG, например -Wno-pragmas или -Wno-oveflow. Полный список флагов приведен на странице руководства.

1 голос
/ 21 октября 2008

AFAIK, такой опции нет - сообщения самоидентифицируются.

...