Страница 1 из 1

Анализаторы c/c++ кода, сравнительный анализ

Добавлено: Ср мар 12, 2014 2:53 pm
Diatlo

Re: Анализаторы c/c++ кода, сравнительный анализ

Добавлено: Пт мар 14, 2014 11:18 am
Vant
Изображение

Re: Анализаторы c/c++ кода, сравнительный анализ

Добавлено: Пт мар 14, 2014 11:46 am
Vant
Из указанных анализаторов только Cppcheck бесплатный.
Скачал здесь: http://cppcheck.sourceforge.net/
Скормил ему сервер, судя по скорости, результаты будут к вечеру, но уже поймано с полдесятка конструкторов без инициализации полей класса.

...

Количество просканированных файлов: 246
Продолжительность сканирования: 17 часов и 50 минут

Re: Анализаторы c/c++ кода, сравнительный анализ

Добавлено: Пт апр 11, 2014 11:37 am
Diatlo
PVS-Studio можно месяц эксплуатировать (evalute), после требует обязательной регистрации.
На их сайте есть ключ на 5 дней, при котором работает проверка на 64-бит ошибки.

Запускал, время работы 25 минут:
ошибка одна
V004 Diagnostics from the 64-bit rule set are not entirely accurate without the appropriate 64-bit compiler. Consider utilizing 64-bit compiler if possible.

замечаний:
1 уровня 2026 (важные)
2 уровня 3109 (не очень важные)
3 уровня 3789 (совсем не важные)

, но много повторяющихся. Например,
снижение произволительности при вызовах константной процедуры Class->getSubclass()->.. подряд,
много сообщений про memsize type/ 32-bit type/вызове функций с аргументами memsize type
много сообщений про магические числа, особенно про 4, маски для AND =)

P.S. примеры расшифровки замечаний можно глянуть тут http://habrahabr.ru/company/pvs-studio/blog/97751/

Re: Анализаторы c/c++ кода, сравнительный анализ

Добавлено: Пн апр 14, 2014 3:37 pm
Diatlo
В MVS 2013 есть встроенный статический анализатор кода =)

http://blogs.msdn.com/b/hkamel/archive/ ... d-how.aspx

Re: Анализаторы c/c++ кода, сравнительный анализ

Добавлено: Пн апр 14, 2014 6:35 pm
Vant
Кстати я пробовал в g++ врубить -std=c++11 -- сервер скомпилялся с легкостью. Так что если уж переползать на MVS 2013, то и последний стандарт врубать. Есть в нем пара-тройка полезностей новых.

Re: Анализаторы c/c++ кода, сравнительный анализ

Добавлено: Вт апр 15, 2014 1:38 pm
Diatlo
1) MVS можно настроить на компиляцию сторонним компилером - настроив режим компиляции g++ проверять,
а как в нем компилится =)

2) Если всякие "умные" "слабые" указатели - то можно решить проблему NULL указателей раз и навсегда =)

3) Вот как надо писать хелпы, по ссылке - для c++11 http://habrahabr.ru/company/infopulse/blog/210644/

4) Шпаргалка по c++11 http://j.mp/cpp11ref