Предоставление контекста для верификации кода С

В этом примере показано, как предоставить контекст для верификации кода С. Если вы используете опции по умолчанию и не предоставляете main функция, Polyspace® Code Prover™ проверяет ваш код на робастность с учетом всех условий верификации. Для образца, программное обеспечение:

  • Считает, что глобальные переменные и входы незакрытых функций являются полной областью значений.

  • Генерирует main который вызывает незакрытые функции в произвольном порядке.

В сложение, если вы не задаете функцию, но объявляете и вызываете ее в своем коде, Polyspace заглушает функцию. Подробный список допущений см. в разделе Допущения анализа Code Prover.

Можно использовать опции анализа на панели Configuration, чтобы изменить поведение по умолчанию и предоставить больше контекста о коде. Выполнение контекстной верификации может привести к более проверенному коду и, следовательно, к меньшему количеству оранжевых проверок.

Управляйте переменными Областями значений

Используйте следующие опции. В пользовательском интерфейсе десктопных продуктов Polyspace опции появляются под узлом Code Prover Verification.

ОпцияЦель
Variables to initialize (-main-generator-writes-variables)Задайте глобальные переменные, которые Polyspace должен считать инициализированными, несмотря на отсутствие явной инициализации в коде.
Constraint setup (-data-range-specifications)Задайте область значений для глобальных переменных.

Последовательность вызова функции управления

Используйте следующие опции. В пользовательском интерфейсе десктопных продуктов Polyspace опции появляются под узлом Code Prover Verification.

ОпцияЦель
Initialization functions (-functions-called-before-main)Задайте функции, которые сгенерированы main должен сначала позвонить.
Functions to call (-main-generator-calls)Задайте функции, которые сгенерированы main необходимо позвонить позже.

Управление упругим поведением

Используйте следующие опции. В пользовательском интерфейсе десктопных продуктов Polyspace опции появляются под узлом Inputs & Stubbing.

ОпцияЦель
Functions to stub (-functions-to-stub)Задайте функции, которые Polyspace должен заглушить.

Похожие темы