Block char16/32_t types (-no-uliterals)

Отключите определения Polyspace для char16_t или char32_t

Описание

Укажите, что анализ не должен определять char16_t или char32_t типы.

Задать опцию

Пользовательский интерфейс (только для настольных продуктов): В строении проекта опция находится на узле Target & Compiler. Смотрите Зависимости для других опций, которые вы также должны включить.

Командная строка и файл опций: Используйте опцию -no-uliterals. См. «Информация о командной строке».

Зачем использовать эту опцию

Если ваш компилятор определяет char16_t и/или char32_t через typedef оператор или при помощи includes используйте эту опцию, чтобы выключить стандартный Polyspace® определение char16_t и char32_t.

Чтобы проверить, задает ли ваш компилятор эти типы, скомпилируйте этот код с помощью настроек компилятора, которые вы обычно используете:

typedef unsigned short char16_t;
typedef unsigned long char32_t;
Если файл компилируется, это означает, что ваш компилятор уже определил char16_t и char32_t. Включите эту опцию Polyspace.

Настройки

На

Анализ не позволяет char16_t и char32_t типы.

Off (по умолчанию)

Анализ позволяет char16_t и char32_t типы.

Зависимости

Вы можете выбрать эту опцию только, когда эти условия верны:

Информация о командной строке

Параметр: -no-uliterals
По умолчанию: off
Пример (Bug Finder): polyspace-bug-finder -lang cpp -compiler gnu4.7 -cpp-version cpp11 -no-uliterals
Пример (Code Prover): polyspace-code-prover -compiler gnu4.7 -lang cpp -cpp-version cpp11 -no-uliterals
Пример (Bug Finder Server): polyspace-bug-finder-server -lang cpp -compiler gnu4.7 -cpp-version cpp11 -no-uliterals
Пример (Code Prover Server): polyspace-code-prover-server -compiler gnu4.7 -lang cpp -cpp-version cpp11 -no-uliterals