Макро-идентификаторы должны быть отличными
Макро-идентификаторы должны быть отличными.
Имена макро-идентификаторов должны быть отличны и от других макро-идентификаторов и от их параметров.
Средство проверки повышает нарушение, если два макросов, которые имеют те же первые 63 символа, заданы с различными значениями. Средство проверки не повышает нарушение если:
Два макросов с теми же первыми 63 символами заданы с тем же значением (даже пустое значение).
Тот же макрос задан с различными значениями, но макрос не определен промежуточный.
Сокращение 63 символов применяется к основанному на C99 анализу. В C90 сокращение является 31 символом. Другими словами, средство проверки рассматривает два макросов как эффективно то же самое, если нет никакого различия в их первом 31 символе. Чтобы использовать проверку правил C90, используйте значение c90
для опции C standard version (-c-version)
. Можно изменить количество символов, сравненных с помощью опции -code-behavior-specifications
. Смотрите -code-behavior-specifications
.
Макро-идентификаторы должны быть отличными. Макрос XX имеет те же значительные символы как макро-YY.
Макро-идентификаторы должны быть отличными. Макро-параметр XX имеет те же значительные символы как макро-параметр YY в макро-ZZ.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: Идентификаторы |
Категория: необходимый |
Категория AGC: необходимый |
Check MISRA C:2012 (-misra3)
| MISRA C:2012 Rule 5.1
| MISRA C:2012 Rule 5.2
| MISRA C:2012 Rule 5.5