6.35 Атрибуты перечислителей
GCC позволяет устанавливать атрибуты для перечислителей. Подробнее о синтаксисе использования атрибутов см. в разделе Синтаксис атрибутов. Другие атрибуты доступны для функций (см. Атрибуты функций), переменных (см. Атрибуты переменных), меток (см. Атрибуты меток), операторов (см. Атрибуты операторов) и типов (см. Атрибуты типов).
В этом примере используется атрибут перечислителя deprecated для обозначения того, что перечислитель oldval устарел:
enum E {
oldval __attribute__((deprecated)),
newval
};
int
fn (void)
{
return oldval;
}
deprecated-
Атрибут
deprecatedприводит к появлению предупреждения, если перечислитель используется где-либо в исходном файле. Это полезно для идентификации перечислителей, которые планируется удалить в будущих версиях программы. Предупреждение также включает местоположение объявления устаревшего перечислителя, чтобы пользователи могли легко найти дополнительную информацию о том, почему перечислитель устарел или что им следует сделать вместо этого. Обратите внимание, что предупреждения возникают только при использовании.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-7.5.0/gcc/Enumerator-Attributes.html