-context-sensitivity)Сохранение контекстной информации о вызове для определения вызова функции, вызвавшего ошибки
Этот параметр влияет только на анализ программы проверки кода.
Укажите функции, для которых при проверке должна храниться информация о контексте вызова. Если функция вызывается несколько раз, использование этой опции позволяет различать различные вызовы.
Пользовательский интерфейс (только для настольных ПК): в конфигурации проекта опция доступна в узле Точность.
файл командной строки и параметров: Использовать параметр -context-sensitivity. См. раздел Сведения о командной строке.
Предположим, функция вызывается дважды в коде. Цвет проверки для каждой операции в теле функции является совокупным результатом обоих вызовов. Если требуется различать цвета в двух вызовах, используйте эту опцию.
Например, если функция содержит красный или оранжевый чек и зеленый чек для одной и той же операции для двух различных вызовов, программное обеспечение объединяет контексты и отображает оранжевый чек для операции. При использовании этой опции чек становится темно-оранжевым, а в подробных данных результатов отображается цвет чека для каждого вызова.

Руководство по использованию этой опции см. в разделе Идентификация вызова функции с ошибкой времени выполнения.
По умолчанию: none
none Программное обеспечение не хранит информацию о контексте вызова для функций.
auto Программное обеспечение хранит информацию о контексте вызова для сдачи на хранение:
Функции, формирующие листья дерева вызовов. Эти функции вызываются другими функциями, но сами функции не вызываются.
Небольшие функции. Программное обеспечение использует внутренний порог для определения того, является ли функция небольшой.
customПрограмма хранит контекстную информацию вызова для указанных функций. Чтобы ввести имя функции, щелкните значок.![]()
При выборе этой опции всплывающие подсказки не отображаются в теле функций, пользующихся преимуществами этой опции (при этом контексты вызова остаются отдельными).
При выборе этой опции анализ может показать некоторые операции кода серым цветом (недостижимый код), даже если можно определить пути выполнения, ведущие к операциям. В этом случае серый код указывает на операции, которые могут быть недоступны только в конкретном контексте вызова.
Например, предположим, что эта функция вызывается с аргументами -1 и 1:
int isPositive (int num) {
if(num < 0)
return 0;
return 1;
}Проверка на if серый, потому что, когда функция вызывается с аргументом -1, if условие всегда соответствует действительности.
Проверка кода внутри if ветвь серого цвета, поскольку при вызове функции с аргументом 1 if условие всегда имеет значение false.
Каждая проверка недоступного кода указывает код, который недоступен только в конкретном контексте вызова. Контекст вызова отображается в подробных данных результата.
Параметр: -context-sensitivity |
Значение: |
По умолчанию: none |
Пример (проверка кода): polyspace-code-prover -sources |
Пример (сервер проверки кода):
polyspace-code-prover-server -sources |
Чтобы программное обеспечение могло определить, какие функции получают контекстное хранилище вызовов, используйте опцию -context-sensitivity-auto.