Элементы языка C11, поддержанные в Polyspace

Эта таблица предоставляет частичный список элементов языка C, которые были введены начиная с C11 и соответствующей поддержки Polyspace®. Если ваш код содержит неподдерживаемые конструкции, Polyspace сообщает об ошибке компиляции.

Элемент языка C11Поддерживаемый
alignas и alignof макросы удобстваДа
aligned_alloc функцияДа
noreturn макросы удобстваДа
Типовой выборДа
Распараллельте вспомогательную библиотеку (threads.h)Да
Атомарная библиотека операций (stdatomic.h)Да
Атомарные типы с _Atomic

Да.

Если вы используете компилятор Лязга, см. книгу ограничений для ограничений на атомарные типы данных. Смотрите Ограничения Верификации Polyspace (Polyspace Code Prover).

UTF-16 и символьные утилиты UTF-32Да

Связанная проверка взаимодействует через интерфейс или альтернативные версии стандартных библиотечных функций, которые проверяют на переполнение буфера (Приложение K C11)

Например, strcpy_s альтернатива strcpy это проверяет на определенные ошибки в копии строки.

Нет.

Polyspace проверяет на определенные ошибки времени выполнения в использовании стандартных библиотечных функций. Проверка не расширяет к этим альтернативам.

Анонимные структуры и объединенияДа
Статический утверждают объявлениеДа

Функции, связанные с обработкой ошибок, такие как errno_t и rsize_t typedefS

Нет.

Если вы видите ошибки компиляции от использования их typedef- s, явным образом задайте путь к своим заголовкам компилятора. Смотрите Обеспечивают Стандартные Заголовки Библиотеки для Анализа Polyspace.

quick_exit и at_quick_exit

Да.

В Средстве поиска Ошибки функции зарегистрированы с at_quick_exit появитесь как невостребованные.

CMPLX, CMPLXF и CMPLXL макросыДа

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

Похожие темы