Компилятор не будет делать это за вас, но (пока... )разработчики компилятора следуют давнему (более чем 30-летнему )соглашению, адаптированному из других компиляторов, которое дает важную информацию в первой строке, используяerror:
или warning:
, чтобы отметить предупреждение. Если вы выберете grep stderr для них, вы увидите минимальную информацию о предупреждениях/ошибках.
grep является хорошей отправной точкой (и вывод "grep -n" полезен сам по себе ). Эти сообщения следуют шаблону имени файла, номера строки, сообщения, который является общим для нескольких инструментов. Я использовал это в vi -как -emacs здесь .
Совсем недавно (в 2014 году )gcc/g++ начал добавлять к сообщениям «стек вызовов -», который предоставляет дополнительную информацию. Это связано с изменением препроцессора для отслеживания номеров строк -, которые можно отключить с помощью -P
опции (, отмеченной здесь ), но это, по-видимому, не полностью интегрировано в форму, которая подавит вызов стека -.
Использование clang не сильно поможет в этом; это также может быть очень многословным. Разработка gcc/g++ добавила много сообщений, как указано здесь .
Решено. Оказалось, что текст метки под значками был немного большим и не помещался по краям, из-за чего оконный менеджер привязывал их к первому подходящему пространству.