exponenta event banner

Управление size_t (-size-t-type-is)

Укажите базовый тип данных size_t

Описание

Укажите базовый тип данных size_t явно: unsigned char, unsigned short, unsigned int, unsigned long или unsigned long long. Если этот параметр не указан, выбор компилятора определяет базовый тип.

Задать опцию

Пользовательский интерфейс (только для настольных ПК): в конфигурации проекта этот параметр находится в узле Target & Compiler.

файл командной строки и параметров: Использовать параметр -size-t-type-is. См. раздел Сведения о командной строке.

Зачем использовать этот параметр

Анализ связывает тип данных с size_t при указании компилятора. Если используется параметр компилятора, который изменяет этот тип по умолчанию, эмулируйте параметр компилятора с помощью этого параметра анализа.

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

/* Header defines malloc as void* malloc (size_t size)
#include <stdio.h>

void* malloc (unsigned int size);
Если файл не компилируется, компилятор (вместе с параметрами компилятора) определяет size_t с использованием другого базового типа. Заменить unsigned int с другим типом, таким как unsigned long и повторите попытку.

Настройки

По умолчанию: defined-by-compiler

defined-by-compiler

Ваша спецификация для Compiler (-compiler) определяет базовый тип size_t.

unsigned-int

Анализ учитывает unsigned int в качестве базового типа size_t.

unsigned-long

Анализ учитывает unsigned long в качестве базового типа size_t.

unsigned-long-long

Анализ учитывает unsigned long long в качестве базового типа size_t.

unsigned-char

Анализ учитывает unsigned char в качестве базового типа size_t.

unsigned-short

Анализ учитывает unsigned short в качестве базового типа size_t.

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

Параметр: -size-t-type-is
Значение: defined-by-compiler | unsigned-char | unsigned-int | unsigned-short | unsigned-long | unsigned-long-long
По умолчанию: defined-by-compiler
Пример (поиск ошибок): polyspace-bug-finder -size-t-type-is unsigned-long
Пример (проверка кода): polyspace-code-prover -size-t-type-is unsigned-long
Пример (сервер поиска ошибок): polyspace-bug-finder-server -size-t-type-is unsigned-long
Пример (сервер проверки кода): polyspace-code-prover-server -size-t-type-is unsigned-long