Когда вы проверяете свой код на MISRA C®: 2 012 нарушений, Polyspace® импортирует выравнивания MISRA C: 2 004 нарушения от предыдущих исследований (если они существуют). Можно обновить от проверки MISRA C: 2 004 правила к MISRA C: 2 012 правил при сохранении выравниваний. Для общих правил на импорте комментария смотрите информацию об Анализе Импорта от Предыдущего Анализа Polyspace.
Программное обеспечение сопоставляет MISRA C: 2 004 Status, Severity и значения Comment, которые вы добавили через пользовательский интерфейс или аннотации кода к соответствующему MISRA C: 2 012 результатов, если результаты существуют. Для получения дополнительной информации об отображении, консультируйтесь с приложением один из MISRA C: 2 012 публикаций.
Если вы переходите от MISRA C: 2004 к MISRA C: 2012, вы не должны рассматривать результаты, которые вы уже выровняли по ширине.
Когда вы выравниваете по ширине MISRA C: 2 004 нарушения при помощи синтаксиса блока кода или несколько выравнивают синтаксис аннотации, и множественные нарушения сопоставляют с тем же MISRA C: 2 012 правил, Polyspace не импортирует каждое выравнивание результата. Вместо этого программное обеспечение импортирует только один набор Status, Severity и значений Comment и применяет эти значения ко всем экземплярам того конкретного MISRA C: 2 012 нарушений правила.
Например, предположите, что вы анализируете свой код и находите нарушения MISRA C: 2 004 правила 16.3 и 16.5. Можно выровнять по ширине эти результаты при помощи синтаксиса аннотации, где вы вводите различное состояние и пояснительный текст для каждого правила.
//polyspace-begin misra2004:16.3 [Status 1] "Explanatory comment 1" //polyspace-begin misra2004:16.5 [Status 2] "Explanatory comment 2" code block start; /* This block of code contains violations of MISRA C:2004 rules 16.3 and 16.5 */ code block end; //polyspace-end misra2004:16.3 //polyspace-end misra2004:16.5
Предыдущие нарушения сопоставляют с MISRA C: 2 012 правил 8.2. Когда вы проверяете свой аннотируемый код по MISRA C: 2 012 правил, Polyspace импортирует только первую линию аннотаций (для правила 16.3) и применяет его ко всем результатам правила 8.2. Вторая линия аннотаций для правила 16.5 проигнорирована. В панели Results List всем нарушениям правила 8.2 установили столбец Status на Status 1
и набор столбца Comment к "Explanatory comment 1"
.
Панель Output Summary отображает предупреждающее сообщение для каждого результата, где импортированная аннотация конфликтует с исходной аннотацией. После того, как вы импортируете свой MISRA C: 2 004 аннотации, проверяйте, что выровненное по ширине состояние не было присвоено результатам, которые вы намереваетесь исследовать или зафиксировать.
Check MISRA C:2004 (-misra2)
| Check MISRA C:2012 (-misra3)