MISRA C:2012 Rule 16.1

Все операторы switch должны быть хорошо сформированы

Описание

Определение правила

Все операторы switch должны быть хорошо сформированы

Объяснение

Синтаксис операторов switch на C не является особенно строгим и может допускать сложное, неструктурированное поведение. Это правило и другие правила накладывают простую последовательную структуру на switch оператор.

Реализация Polyspace

Следование MISRA® спецификации, проверка правил кодирования также вызывает нарушение правила 16.1, если switch оператор нарушает одно из следующих правил: 16.2, 16.3, 16.4, 16.5 или 16.6.

Дополнительное сообщение в отчете

Все сообщения в файле отчета начинаются с «MISRA-C операторов switch синтаксиса нормативного ограничения».

  • Инициализаторы не должны использоваться в пунктах switch.

  • Дочерний оператор коммутатора должен быть составным оператором.

  • Все положения о переключателях должны находиться на одном уровне.

  • Положение switch должно содержать только метки switch и положения switch, и никакого другого кода.

  • Оператор switch должен содержать только метки switch и положения switch, и никакого другого кода.

Поиск и устранение проблем

Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».

Проверяйте информацию

Группа: Операторы Switch
Категория: Требуемая
Категория СМЖЛ: Консультационная