Неопределенные макро-идентификаторы не должны использоваться в #if или #elif директивах препроцессору, за исключением операндов к заданному оператору
Примечание
Используйте Bug Finder вместо Code Prover для проверки правил кодирования. Поддержка кодирования правил, регистрируясь в Code Prover будет удалена в будущем релизе. См. Вопросы совместимости.
Неопределенные макро-идентификаторы не должны использоваться в #if или #elif директивах препроцессору, за исключением операндов к заданному оператору.
При попытке использовать макро-идентификатор в директиве предварительной обработки, и вы не задали тот идентификатор, то препроцессор принимает, что это имеет значение нуля. Это значение не может оправдать надежды разработчика.
Polyspace® отмечает #if
или #elif
оператор, если это использует неопределенный макро-идентификатор.
Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.
Группа: предварительная обработка директив |
Категория: необходимый |