Комментарии 4
if (side > 0) {
*is_side_2r = true;
*use_new_ref = true;
return false;
}
else if (side < 0) {
*is_side_2r = false;
*use_new_ref = false;
return false;
}
Учитывая return - else избыточный.
Известным недостатком всех статических анализаторов кода является выдача ими ложных срабатываний. С предупреждениями компилятора приблизительно такая же история.
Ув. Андрей, это не недостаток, это особенность статических анализаторов. Любое правило, выдающее предупреждение без ложных срабатываний должно быть просто вставлено в компилятор. :-) Тут можно, конечно, поспекулировать на тему полного, а не помодульного анализа программы, учёта библиотек и т.д.
Но так или иначе, без ложных срабатываний не было бы смысла ни в PVS, ни в clang-analyze, ни в других анализаторов — всё рано или поздно было бы вставлено в clang/gcc.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Предупреждения помогают писать лаконичный код