3.7 Параметры управления форматированием диагностических сообщений
Традиционно, диагностические сообщения форматируются независимо от характеристик устройства вывода (например, его ширины, ...). Вы можете использовать описанные ниже параметры для управления алгоритмом форматирования диагностических сообщений, например, количеством символов на строке, частотой вывода информации о расположении исходного кода. Обратите внимание, что некоторые языковые передние концы могут не поддерживать эти параметры.
-
-fmessage-length=n - Попытаться отформатировать сообщения об ошибках так, чтобы они помещались на строках примерно по n символам. По умолчанию используется 72 символа для
g++и 0 для остальных передних концов, поддерживаемых GCC. Если n равно нулю, то перенос строк не выполняется; каждое сообщение об ошибке отображается на одной строке. -fdiagnostics-show-location=once- Значимо только в режиме переноса строк. Указывает программе отображения диагностических сообщений выводить информацию о расположении исходного кода один раз; то есть, если сообщение слишком длинное для одной строки и должно быть перенесено на несколько строк, информация о расположении исходного кода (в качестве префикса) не будет выводиться повторно на каждой последующей строке. Это поведение по умолчанию.
-fdiagnostics-show-location=every-line- Значимо только в режиме переноса строк. Указывает программе отображения диагностических сообщений выводить ту же информацию о расположении исходного кода (в качестве префикса) для физических строк, которые получились в результате разбиения сообщения, слишком длинного для одной строки.
-
-fdiagnostics-color[=WHEN]-fno-diagnostics-color - Использовать цвет в диагностике. WHEN может принимать значения ‘
never’, ‘always’, или ‘auto’. По умолчанию используется ‘never’, если переменная средыGCC_COLORSне задана, и ‘auto’ в противном случае. Значение ‘auto’ означает использовать цвет только если стандартный вывод ошибки направлен на терминал. Формы-fdiagnostics-colorи-fno-diagnostics-colorявляются псевдонимами-fdiagnostics-color=alwaysи-fdiagnostics-color=never, соответственно.Цвета определяются переменной среды
GCC_COLORS. Ее значение — это список возможностей, разделенных двоеточием, и подстрок SGR (Select Graphic Rendition). Команды SGR интерпретируются терминалом или эмулятором терминала. (См. раздел в документации вашего текстового терминала для разрешенных значений и их значений как атрибутов символов.) Эти значения подстрок — целые числа в десятичном представлении и могут быть объединены точкой с запятой. Общие значения для объединения включают ‘1’ для жирной гарнитуры, ‘4’ для подчеркивания, ‘5’ для мигания, ‘7’ для инверсии, ‘39’ для стандартного цвета переднего плана, ‘30’ по ‘37’ для цветов переднего плана, ‘90’ по ‘97’ для цветов переднего плана в 16-цветном режиме, ‘38;5;0’ по ‘38;5;255’ для цветов переднего плана в 88-цветном и 256-цветном режимах, ‘49’ для стандартного цвета заднего плана, ‘40’ по ‘47’ для цветов заднего плана, ‘100’ по ‘107’ для цветов заднего плана в 16-цветном режиме и ‘48;5;0’ по ‘48;5;255’ для цветов заднего плана в 88-цветном и 256-цветном режимах.Значение по умолчанию
GCC_COLORS— ‘error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01’, где ‘01;31’ — это жирный красный цвет, ‘01;35’ — это жирный пурпурный цвет, ‘01;36’ — это жирный сине-зеленый цвет, ‘01;32’ — это жирный зеленый цвет, а ‘01’ — это жирный цвет. УстановкаGCC_COLORSв пустую строку отключает цвета. Поддерживаемые возможности перечислены ниже.error=- Подстрока SGR для ошибок: маркеры.
warning=- Подстрока SGR для предупреждений: маркеры.
note=- Подстрока SGR для заметок: маркеры.
caret=- Подстрока SGR для строки с курсором.
locus=- Подстрока SGR для информации о расположении, например, ‘
file:line’ или ‘file:line:column’. quote=- Подстрока SGR для информации, напечатанной в кавычках.
-fno-diagnostics-show-option- По умолчанию каждое выводимое диагностическое сообщение включает текст, указывающий командную строку, которая непосредственно управляет диагностическим сообщением (если такая опция известна механизму диагностики). Указание флага
-fno-diagnostics-show-optionподавляет это поведение. -fno-diagnostics-show-caret- По умолчанию каждое выводимое диагностическое сообщение включает исходную строку и символ «^» для указания столбца. Данная опция подавляет эту информацию.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.4/gcc/Language-Independent-Options.html