Namespaces
Variants

C attribute: noreturn, _Noreturn (since C23)

From cppreference.net

Указывает, что функция не возвращает управление.

Содержание

Синтаксис

[[ noreturn ]]
[[ __noreturn__ ]]
[[ _Noreturn ]]
[[ ___Noreturn__ ]]
(устаревший)

Объяснение

Указывает, что функция не возвращает управление.

Этот атрибут применяется к имени функции и указывает, что функция не возвращает управление через выполнение оператора return или достижение конца тела функции (она может вернуть управление через выполнение longjmp ). Поведение не определено, если функция с этим атрибутом фактически возвращает управление. Рекомендуется вывод диагностического сообщения компилятором, если это может быть обнаружено.

Ранее это обозначалось ключевым словом _Noreturn до тех пор, пока оно не было устаревшим начиная с C23 и заменено этим атрибутом.

Стандартная библиотека

Следующие стандартные функции объявлены с атрибутом noreturn (ранее они объявлялись с спецификатором _Noreturn до стандарта C23):

Смотрите также