Функции языка на стадии становления не должны быть использованы
Функции языка на стадии становления не должны быть использованы.
Некоторые новые функции языка в Стандарте C11 имеют неопределенное, незаданное или заданное реализацией поведение. Эти функции могут также предоставить четко определенное поведение, которое игнорирует ожидания разработчика. Хотя правило 1.3 и директива 1.1 запрещают неопределенное и заданное реализацией поведение, чтобы избежать четко определенного поведения, которое игнорирует ожидания, некоторым функциям языка вкратце препятствуют с помощью правила 1.4.
Правило запрещает использование следующих функций языка:
_Generic оператор.
_Noreturn функциональный спецификатор и <stdnoreturn.h> заголовочный файл
_Atomic введите спецификатор и услуги, предоставленные <stdatomic.h> (например, макросы, начинающиеся с ATOMIC_ и функции, начинающиеся с atomic_ реализованный как макросы в <stdatomic.h>).
_Thread_local спецификатор класса памяти и средства обеспечиваются <threads.h> (например, типы, такие как thrd_t и функционирует, такие как thrd_create).
_Alignas спецификатор выравнивания, _Alignof оператор и <stdalign.h> заголовочный файл и средства там (такие как alignas и alignof макросы).
Все средства в Приложении K Стандарта C11 о 'Связано проверяющих интерфейсах, кроме определения __STDC_WANT_LIB_EXT1__ к '0'
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
| Группа: стандарт C среда |
| Категория: необходимый |
| Категория AGC: необходимый |