Как установить атрибут для всех функций С++ без изменения кода?

Я хотел бы использовать параметр -Wunused-result в GCC для обнаружения неиспользуемых/игнорируемых возвращаемых значений в моем коде. Но для этого требуется маркировка объявлений функций либо с помощью атрибута, либо с помощью последовательности спецификаторов атрибутов.

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

Ответ 1

Это выглядит как работа для плагина GCC. Upstream может также принять патч, который устанавливает атрибут для всех последующих функций с помощью прагмы, но точная семантика, вероятно, довольно сложна для С++.