Разрешение -xml-annotations-description Ошибки

Проблема

Когда вы используете опцию -xml-annotations-description для применения пользовательских аннотаций к Polyspace® результаты, некоторые пользовательские аннотации не применяются, и вы видите предупреждения в выходах консоли или Output Summary интерфейса рабочего стола.

Возможные решения

Пользовательская аннотация не найдена в отображении

Если вы задаете пользовательский синтаксис аннотации, но не сопоставляете его с синтаксисом аннотации Polyspace, Polyspace обнаруживает пользовательскую аннотацию, но не применяет ее к результатам анализа. Предупреждение, аналогичное этому предупреждению, отображается в выходах консоли или в Output Summary интерфейса рабочего стола Polyspace.

Verifying sources ...
Verifying zero_div.c (1/1)
Warning: rule :50 from exampleCustomAnnotation not found in the mapping (XML file).
         Skipping the annotation

Решение.  Проверьте <Mapping/> раздел XML- файл, который вы передаете в -xml-annotations-description опция. Если правило, указанное в предупреждении, не сопоставлено с правилом Polyspace, добавьте соответствующую запись для сопоставления правила. Например, чтобы сопоставить правило 50 из предыдущего предупреждения с правилом кодирования Polyspace MISRA C®: 2012 Правило 8.4, добавить эту запись в <Mapping/> раздел:

<Result_Name_Mapping  Rule_Identifier="50" Family="MISRA-C3" Result_Name="8.4"/>

Аннотации Polyspace не применяются к текущему коду

Если вы задаете пользовательский синтаксис аннотации и сопоставляете его с синтаксисом аннотации Polyspace, Polyspace может не применить некоторые пользовательские аннотации к исходному коду. Предупреждение, аналогичное этому предупреждению, отображается в выходах консоли или в Output Summary интерфейса рабочего стола Polyspace.

Warning: These Polyspace annotations do not apply to the current code:
|          In file D:\Polyspace\Examples\zero_div.c line 7, annotation MISRA-C3:8.4 with text 
"Justified by annotation in source"
|          In file D:\Polyspace\Examples\zero_div.c line 20, annotation MISRA-C3:8.4 with text 
"Justified by annotation in source"
|        Possible reasons:
|          - Issue not detected with selected configuration options.
|          - Issue is fixed.
|          - Annotation syntax is incorrect

Решение.  Проверьте наличие следующих возможных причин:

  • Проблема с адресами аннотаций была устранена в исходном коде. Polyspace обнаруживает пользовательскую аннотацию, но игнорирует ее.

  • Проблема, при которой Polyspace не обнаружил адреса аннотаций с заданными опциями анализа. Например, если пользовательская аннотация обращается к нарушению стандарта кодирования MISRA C: 2012, но Polyspace не проверяет на нарушения этого стандарта кодирования, потому что опция Check MISRA C:2012 (-misra3) не задан.

  • Проблема обнаружения адресов аннотаций, но Polyspace не может соответствовать пользовательской аннотации соответствующей аннотации Polyspace. Это указывает на синтаксическую ошибку в <Mapping/> раздел XML- файл, который вы передаете в -xml-annotations-description опция.

См. также

Похожие темы