Значение errno должно только быть протестировано, когда последней функцией, которая будет названа, был errno - устанавливающий функцию
Значение errno должно только быть протестировано, когда последней функцией, которая будет названа, был errno - устанавливающий функцию.
Помимо errno - устанавливающие функции, Стандарт не осуществляет тот другой, функции устанавливают errno при ошибках. Устанавливают ли эти функции errno, или не является зависящим от реализации.
Чтобы обнаружить ошибки, если вы проверяете один только errno, валидность этой проверки также становится зависящей от реализации. На реализациях, которые не требуют установки errno, даже если вы проверяете один только errno, можно пропустить состояние ошибки.
Для списка errno - устанавливающие функции, смотрите MISRA C:2012 Rule 22.8.
Значение errno должно только быть протестировано, когда последней функцией, которая будет названа, был errno - устанавливающий функцию.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
| Группа: ресурсы |
| Категория: необходимый |
| Категория AGC: необходимый |
| Язык: C90, C99 |