exponenta event banner

Твердость -xml-annotations-description Ошибки

Проблема

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

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

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

Если определить пользовательский синтаксис аннотации, но не сопоставить его с синтаксисом аннотации Polyspace, Polyspace обнаруживает пользовательскую аннотацию, но не применяет ее к результатам анализа. Предупреждение, подобное этому, отображается в выходных данных консоли или в сводке выходных данных интерфейса рабочего стола 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 Rule 8.4, добавьте эту запись в <Mapping/> раздел:

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

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

Если определить пользовательский синтаксис аннотации и сопоставить его с синтаксисом аннотации Polyspace, Polyspace может не применить некоторые пользовательские аннотации к исходному коду. Предупреждение, подобное этому, отображается в выходных данных консоли или в сводке выходных данных интерфейса рабочего стола 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 с указанными параметрами анализа. Например, если пользовательская аннотация адресована нарушению стандарта кодирования MISRA C: 2012, но Polyspace не проверил нарушения этого стандарта кодирования, так как опция Check MISRA C:2012 (-misra3) не указан.

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

См. также

Связанные темы