main ФункцияВерификация Polyspace® требует, чтобы ваш код имел main функция. Можно выполнить одно из следующих действий:
Обеспечьте main функционируйте в своем коде.
Укажите, что Polyspace должен сгенерировать main.
main ФункцияПеред верификацией задайте одну из следующих опций. В пользовательском интерфейсе десктопных решений Polyspace опции появляются под узлом Code Prover Verification.
| Опция | Описание |
|---|---|
Verify whole application | Верификация останавливается, если программное обеспечение не обнаруживает |
Verify module or library (-main-generator) | Перед верификацией Polyspace проверяет, содержит ли ваш код Если
|
main ФункцияВо время автоматического main генерация, программное обеспечение делает определенные предположения о последовательности вызова функции или поведении глобальных переменных. Например, значение по умолчанию автоматически сгенерировало main моделирует следующее поведение:
Функции, что вы задаете использование опции Functions to call (-main-generator-calls) может быть назван в произвольном порядке.
В начале каждого тела функции глобальные переменные могут иметь полный спектр значений, позволенных их типом.
Чтобы предоставить более точную модель последовательности вызова, можно вручную записать main функция в целях верификации. Можно добавить этот main функция в отдельном файле к вашему проекту. В некоторых случаях обеспечение точной последовательности вызова может сократить количество оранжевых проверок. Например, в следующем коде, Polyspace принимает тот f и g может быть назван в любом порядке. Поэтому это производит оранжевое переполнение для случая когда f называется перед g. Если вы знаете тот f называется после g, можно записать main функционируйте, чтобы смоделировать эту последовательность.
static char x;
static int y;
void f(void)
{
y = 300;
}
void g(void)
{
x = y;
}