Проект не должен содержать недостижимый код
Проект не должен содержать недостижимого кода.
Если программа не демонстрирует неопределенное поведение, недоступный код не может быть выполнен. Недоступный код не может повлиять на выходные данные программы. Наличие недостижимого кода может указывать на ошибку в логике программы. Недостижимый код, который компилятор не удаляет ресурсы отходов, например:
Он занимает место в памяти целевого компьютера.
Его наличие может заставить компилятор выбирать более длинные, медленные команды перехода при передаче управления вокруг недостижимого кода.
В пределах цикла он может предотвратить нахождение всего цикла в кэше команд.
Polyspace ® Bug Finder™ и Polyspace Code Prover™ проверки этого правила кодирования по-разному. Анализ может дать различные результаты.
Проверка выполнения программы проверки кода для недостижимого кода показывает больше случаев, чем проверка MISRA ® для правила 2.1. См. такжеUnreachable code(Доказательство кода Polyspace). Проверка времени выполнения выполняет более полный анализ. В процессе проверки могут отображаться некоторые экземпляры, которые не являются строго недоступными кодом, но недоступны только в контексте анализа. Например, в следующем коде проверка времени выполнения показывает потенциальное деление на ноль в первой строке, а затем удаляет нулевое значение flag для остальной части анализа. Поэтому он считает if блок недоступен.
val=1.0/flag;
if(!flag) {}Если вы ожидаете нарушения правила, но не видите его, обратитесь к разделу Нарушения стандартов кодирования не отображаются.
| Группа: Неиспользуемый код |
| Категория: Обязательно |
| Категория СМЖЛ: требуется |