Management of 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
Пример (Bug Finder): polyspace-bug-finder -size-t-type-is unsigned-long
Пример (Code Prover): polyspace-code-prover -size-t-type-is unsigned-long
Пример (Bug Finder Server): polyspace-bug-finder-server -size-t-type-is unsigned-long
Пример (Code Prover Server): polyspace-code-prover-server -size-t-type-is unsigned-long