Программа не должна содержать нарушения стандартного Синтаксиса C и ограничения, и не должна превышать пределы перевода реализации
Программа не должна содержать нарушения стандартного Синтаксиса C и ограничения, и не должна превышать пределы перевода реализации.
Средство проверки правила проверяет на эти проблемы. Технические требования могут зависеть от версии стандарта C, используемого в анализе. Смотрите C standard version (-c-version).
| Проблема | C стандартная зависимость | Дополнительная информация |
|---|---|---|
Целочисленная константа падения вне области значений long int (если константа подписывается), или unsigned long int (если константа без знака). | Проверяемый на C90 только. | Средство проверки правила использует ваши технические требования для размера long int переменная (обычно 32 бита). См. также Target processor type (-target). |
| Массив нулевого размера используется. | Проверяемый на C90 только. | |
| Количество макросов, заданных в модуле перевода, превышает предел, заданный в стандарте. | Количество макроопределений позволило:
| Средство проверки правила считает модуль перевода как исходный файл и заголовочные файлы включенным прямо или косвенно в исходный файл. |
Глубина вложения в операторах управления (как ifв то время как, и т.д.), превышает предел, заданный в стандарте. | Максимальная глубина вложения позволила:
| |
| Количество уровней использования включения включает файлы, превышает предел, заданный в стандарте. | Максимальное количество уровней включения позволило:
| |
| Число членов структуры или объединение превышают предел, заданный в стандарте. | Максимальное количество членов в структуре или объединении:
| |
| Количество уровней вложения в структуре превышает предел, заданный в стандарте. | Максимальная глубина вложения:
| |
| Количество констант в одном перечислении превышает предел, заданный в стандарте. | Максимальное количество констант перечисления позволило:
| |
| Оператор ассемблера используется. | Проверяемый на все стандарты C. | |
| Используется нестандартная директива препроцессору. | Проверяемый на все стандарты C. | Средство проверки правила отмечает использование директив препроцессору, которые не найдены в стандарте C, например, #ident, #alias и #assert. |
| Нераспознанный текст следует директиве препроцессору. | Проверяемый на все стандарты C. | Средство проверки правила отмечает посторонний текст в соответствии с директивой препроцессору (линия, начинающаяся #include <header> code |
Стандартные сообщения ошибки компиляции не приводят к нарушению этого правила MISRA®.
Совет
К массе - выравнивают по ширине все результаты, которые прибывают из той же причины, используют столбец Detail на панели Results List. Кликните по заголовку столбца так, чтобы все результаты с той же записью группировались. Выберите первый результат и затем выберите последний результат при содержании Shift ключ. Присвойте состояние одному из результатов. Если вы не видите столбец Detail, щелкните правой кнопкой по любому другому заголовку столбца и включите этот столбец.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
| Группа: стандарт C среда |
| Категория: необходимый |
| Категория AGC: необходимый |