MISRA C++:2008 Rule 0-1-1

Проект не должен содержать недостижимый код

Описание

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

Проект не должен содержать недостижимый код.

Объяснение

Это правило помечает ситуации, когда группа операторов недоступна по синтаксическим причинам. Для образца, код, следующий за return оператор всегда недоступен.

Недоступный код предполагает ненужное обслуживание и часто может указывать на ошибки программирования.

Реализация Polyspace

Bug Finder и Code Prover по-разному проверяют это правило кодирования. Анализы могут привести к различным результатам.

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

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

Примеры

расширить все

int func(int arg) {
 int temp = 0;
 switch(arg) {
     temp = arg; // Noncompliant
     case 1:
     {
         break;
     }
     default:
     {
         break;
     }
 }
 return arg;
 arg++; // Noncompliant
}

Эти операторы недоступны:

  • Операторы внутри switch оператор, который не принадлежит case или default блок.

  • Операторы после return оператор.

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

Группа: Языковые независимые вопросы
Категория: Требуемая
Введенный в R2013b