-disable-initialization-checks
)Отключите проверки для неинициализированных переменных и указателей
Эта опция влияет только на анализ Code Prover.
Задайте, что Polyspace® Code Prover™ не должны проверять отсутствие инициализации в коде.
Пользовательский интерфейс (только для настольных продуктов): В строении проекта опция находится на узле Check Behavior.
Командная строка и файл опций: Используйте опцию -disable-initialization-checks
. См. «Информация о командной строке».
Используйте эту опцию, если вы не хотите обнаруживать образцы неинициализированных переменных.
Polyspace Code Prover не выполняет следующие проверки:
Non-initialized local variable
: Локальная переменная не инициализирована перед чтением.
Non-initialized variable
: Переменная, отличная от локальной, не инициализируется перед чтением.
Non-initialized pointer
: Указатель не инициализируется перед чтением.
Return value not initialized
: Функция C не возвращает значение, когда ожидалось.
Polyspace принимает, что при объявлении:
Переменные имеют полный диапазон значений, разрешенных их типом.
Указатели можно NULL
-значен или указывает на блок памяти с неизвестным смещением.
Polyspace Code Prover проверяет отсутствие инициализации в вашем коде. Программа отображает красный цвет, проверяет, образец ли переменная не инициализирован, и оранжевый цвет проверяет, инициализирована ли переменная только на некоторых путях выполнения.
Если вы выбираете эту опцию, программное обеспечение не сообщает о большинстве нарушений MISRA C®: 2004 правила 9,1 и MISRA C:2012 Rule 9.1
.
Если вы выберете эту опцию, количество и тип оранжевых чеков в вашем коде может измениться.
Например, в следующей таблице показан дополнительный оранжевый флажок с включенной опцией.
Проверки на неинициализацию включены | Проверки на отсутствие инициализации отключены |
---|---|
void func(int flag) { int var1,var2; if( flag==0) { var1=var2; } else { var1=0; } var2=var1 + 1; } В этом примере программное обеспечение создает:
| void func(int flag) {
int var1,var2;
if( flag==0) {
var1=var2;
}
else {
var1=0;
}
var2=var1 + 1;
} В этом примере программное обеспечение:
|
Параметр: -disable-initialization-checks |
По умолчанию: Off |
Пример (Code Prover): Polyspace Code Prover -sources |
Пример (Код Prover Server):
Полипространство -code-prover-server -sources file_name |