2015-02-04 2 views
0

Я пытаюсь получить номера ошибок или идентификаторы ошибок, напечатанные с сообщениями об ошибках от моего компилятора C. В настоящее время я использую GCC, но если будет проще использовать Clang, это тоже будет хорошо.Настройка сообщения об ошибке компилятора

Это пример сообщения об ошибке, как я получаю это:

error: syntax error before '}' token 

Это, как я хочу, чтобы вместо этого:

error(ERRID): syntax error before '}' token -- 

ERRID является числом или уникальная строка для этой ошибки.

Возможно ли это с помощью GCC или Clang? И если это возможно, как это сделать?

Я хочу, чтобы эта функция делала сообщения об ошибках доступными для поиска и распознаваемыми для простого анализа и анализа ошибок.

+2

Хмм .. Скачайте файлы gcc и внесите в них изменения в соответствии с вашими потребностями? –

+0

@EugeneSh. im надеясь, что если эта функция уже реализована в gcc, изменение gcc действительно займет много времени, чтобы узнать. –

+0

Вы можете прочесть clang docs о '# error' – ForceBru

ответ

0

Сообщения об ошибках локализованы, вы можете изменить каталог сообщений об ошибках для своего языка, чтобы удовлетворить ваши потребности.

В качестве альтернативы вы можете изменить некоторые пропуски, сообщающие об ошибке, например. с вашим плагином (или даже некоторым дополнением MELT).

Но я удивлен, что вы спрашиваете, исходный код GCC содержит каталог сообщений об ошибках в подкаталоге gcc/po/ исходного кода.

Обратите внимание, что в каталоге сообщений используется оборудование gettext(3), поэтому идентификатор сообщения является собственно английским (C locale) сообщением.

Смежные вопросы