Комментарии 11
Как минимум парочку примеров к плюсам, а особенно 2021 года, имеют очень отдалённое отношение. У вас же даже в диагностике ".c" стоит для одного из них. Как говорится, расширение файла .cpp не означает, что внутри плюсы.
А так, забавные ошибки, да.
Топ-10 ошибок в C++ проектах
10. gskvulkanimage.c
8. bug34427.c
7. pe_identify_machine.c
6. master.c
5. args.c
Грустно видеть в 21 году код на с++, который больше си и ошибки сишные.
Статический анализ это конечно хорошо. Но не пора ли добавить динамический - проинструментировать код какими-то логгированиями и проверками условий, а потом, после запуска и завершения работы, что-то проанализировать по логам?
Большинство ошибок выглядят такими, что в принципе невозможны при использовании современного C++ с его современной библиотекой. Кстати, а как дела на этом фронте у PVS Studio? Анализурются ли разные там std::move где нужен std::forward (либо там где он наоборот, вообще противопоказан), всякие там коварства со string_view и прочее?
Дела хорошо, но, конечно, всегда есть куда расти. Несколько диагностических правил, которые сразу пришли на ум:
V828. Decreased performance. Moving an object in a return statement prevents copy elision.
V833. Using 'std::move' function's with const object disables move semantics.
V1017. Variable of the 'string_view' type references a temporary object, which will be removed after evaluation of an expression.
Такой тяжёлый порог входа в с++, так трудно пройти собеседование с синьерами... и такой дрянной язык кодирования выходит у тех самых синьеров.
А вот и новое за 2022 год! Топ-10 ошибок в C++ проектах за 2022 год.
Топ-10 ошибок в C++ проектах за 2021 год