Выражение cvalue не должно быть неявно преобразовано в другой базовый тип
Выражение cvalue не должно быть неявно преобразовано в другой базовый тип.
Это правило гарантирует, что результат выражения не будет переполнен при преобразовании в другой тип.
Выражения, отмеченные этой проверкой, соответствуют подробным спецификациям выражений значений из документации MISRA ® C++ .
Базовый тип данных выражения cvalue является самым широким из типов данных операнда в выражении. Например, если добавить две переменные, одна из них будет иметь тип int8_t (typedef для char) и другой типа int32_t (typedef для int), дополнение имеет базовый тип int32_t. При назначении суммы переменной типа int8_t, правило нарушается.
Если вы ожидаете нарушения правила, но не видите его, обратитесь к разделу Нарушения стандартов кодирования не отображаются.
| Группа: Выражения |
| Категория: Обязательно, Автоматизировано |