Вы ожидаете нарушение правила кодирования на строке кода, но Polyspace® анализ не показывает нарушение.
Вы можете включить уменьшаемое подмножество кодирования правил.
Например, если вы проверяете на MISRA C®: 2 012 правил, по умолчанию, анализ включает mandatory-required
подмножество только.
Рассмотрите опции правил кодирования, которые вы используете. См.:
Все нарушения правила кодирования в файле могут быть подавлены.
Например, по умолчанию, кодирующие нарушения правила подавлены от заголовочных файлов, которые не находятся в том же месте как исходные файлы.
Проверяйте файлы, где вы подавляете нарушения правила кодирования. Смотрите Do not generate results for (-do-not-generate-results-for)
.
Нарушение правила происходит в макрорасширении. Когда нарушение правила происходит в макроопределении, Polyspace показывает результат только однажды в самом определении а не на каждом экземпляре макроса (если нарушение правила не происходит явным образом из-за макро-параметров в определенном экземпляре). Если определение происходит в заголовочном файле, оно может быть подавлено от результатов. См. также Результаты Polyspace в Линиях, Содержащих Макросы.
На панели Source, чтобы видеть, содержит ли линия макрорасширение, ищут значок.
Найдите макроопределение и смотрите, происходит ли оно в заголовочном файле. Определите, подавляете ли вы нарушения правила кодирования от заголовочных файлов. Смотрите Do not generate results for (-do-not-generate-results-for)
.
Если какой-либо исходный файл в анализе не компилирует, кодирование проверки правил остается неполным. Кодирование управляет результатами средства проверки:
Не может содержать полные результаты для файлов, которые не скомпилировали.
Не может содержать полные результаты для файлов, которые действительно компилировали, потому что некоторые правила проверяются только после того, как компиляция завершена.
Проверяйте на ошибки компиляции. Информация об Ошибке Вида на море, Когда Аналитические Остановки.
Если при запуске анализ Code Prover, чтобы получить проверку податливости с помощью опции Verification level (-to)
, вы не можете видеть нарушения некоторых правил. Эти правила проверяются на более поздних этапах анализа Code Prover.
Это обоснование применяется к определенным правилам и не применяется к анализу Bug Finder. Смотрите Проверку на Кодирование Стандартных Нарушений.
Если вы не видите нарушение одного из тех правил, проверяйте, доходит ли ваш анализ Code Prover до исходной податливости, проверяющей только. Используйте более высокое значение для опции Verification level (-to)
.