Значение выражения должно быть тем же самым согласно любому порядку оценки, которую разрешает стандарт
Примечание
Используйте Bug Finder вместо Code Prover для проверки правил кодирования. Поддержка кодирования правил, регистрируясь в Code Prover будет удалена в будущем релизе. См. Вопросы совместимости.
Значение выражения должно быть тем же самым согласно любому порядку оценки, которую разрешает стандарт.
Если выражение приводит к различным значениям в зависимости от порядка оценки, ее значение становится заданным реализацией.
Polyspace® повышает нарушение, если выражение удовлетворяет какому-либо из этих условий:
Та же переменная изменяется несколько раз в выражении, или это и считано и записано.
Выражение позволяет больше чем один порядок оценки.
Выражение содержит один volatile
объект, который происходит многократно.
Выражение содержит больше чем один volatile
объект.
Поскольку volatile
объекты могут изменить свое значение в любое время, выражение, содержащее несколько volatile
переменные или несколько экземпляров того же volatile
переменная сила имеет различные результаты в зависимости от порядка оценки.
Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.
Группа: Выражения |
Категория: необходимый |