Указатели, возвращенные Стандартными Библиотечными функциями, localeconv, getenv, setlocale или strerror должны только использоваться, как будто у них есть указатель на const - квалифицированный тип
Указатели, возвращенные Стандартными Библиотечными функциями, localeconv, getenv, setlocale или strerror должны только использоваться, как будто у них есть указатель на const - квалифицированный тип.
Стандарт C99 утверждает, что, если программа изменяет структуру, на которую указывает значение, возвращенное localeconv или строками, возвращенными getenv, setlocale или strerro, неопределенное поведение происходит. Обработка указателей, возвращенных различными функциями, как будто они были const - квалифицированный, позволяет аналитическому инструменту обнаруживать любую попытку изменить объект через один из указателей. При присвоении возвращаемых значений функций к const - квалифицированные указатели приводят к компилятору, выпуская диагностику, если попытка предпринята, чтобы изменить объект.
Указатели, возвращенные Стандартными Библиотечными функциями, localeconv, getenv, setlocale или strerror должны только использоваться, как будто у них есть указатель на const - квалифицированный тип.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
| Группа: Стандартные библиотеки |
| Категория: обязательный |
| Категория AGC: обязательный |
| Язык: C90, C99 |
MISRA C:2012 Rule 11.8 | MISRA C:2012 Rule 21.8 | MISRA C:2012 Rule 7.4