Функция не делает возвращаемого значения, хотя возвращаются, типом не является void
Отсутствие оператора возврата происходит, когда функция не возвращает значение вдоль по крайней мере одного пути к выполнению. Если типом возврата функции является void
, эта ошибка не происходит.
Если функция имеет non-void
возвращаемое значение в его подписи, это, как ожидают, возвратит значение. Возвращаемое значение этой функции может использоваться в более поздних расчетах. Если выполнение тела функции проходит путь где return
оператор отсутствует, функциональное возвращаемое значение неопределенно. Расчеты с этим возвращаемым значением могут привести к непредсказуемым результатам.
В большинстве случаев можно зафиксировать этот дефект путем размещения return
оператор в конце тела функции.
В качестве альтернативы можно идентифицировать, какие пути к выполнению через тело функции не имеют return
оператор и добавляет return
оператор на тех путях. Часто детали результата показывают последовательность событий, которые указывают на этот путь к выполнению. Можно добавить return
оператор в соответствующей точке в пути. Если детали результата не показывают историю события, можно проследить использование, щелкните правой кнопкой по опциям по исходному коду и смотрите предыдущие связанные события. См. также Интерпретируют Результаты Polyspace Bug Finder.
Смотрите примеры мер ниже.
Если вы не хотите устранять проблему, добавьте комментарии в свой результат или код, чтобы избежать другого анализа. Смотрите Результаты Polyspace Адреса Через Исправления ошибок или Выравнивания.
Группа: Поток данных |
Язык: C | C++ |
Значение по умолчанию: на |
Синтаксис командной строки: MISSING_RETURN |
Удар: низко |