Pull to refresh

Comments 28

Спасибо за статью, удачи с проектом! Как выпустите — напишите сюда еще пост — программистам нужны такие инструменты, особенно бесплатные.
Вопрос на засыпку? Этот самый хваленый анализатор можно просто на папку с сырцами натравить или же на makefile или он гвоздями к студии прибит?
ЗЫ
Юзаю scanbuild, входящий в состав clang'а
Просто так натравить невозможно. Мы должны знать пути до библиотек. Должны знать, где лежит компилятор Visual C++, чтобы воспользоваться его препроцессором. К сожалению, мы все никак не можем перейти на препроцессор из библиотеки boost, так как он имеет как минимум одну критических для нас ошибку. Еще мы должны знать препроцессорные директивы. Для всего этого нам и нужен проект Visual Studio.

Для тек у кого проекта нет в принципе, пока существует только сложный путь вида: "Использование PVS-Studio из командной строки".

Промежуточный вариант по сложности — можно создать простенький проект. Не обязательно, чтобы он компилировался. Он должен только смочь пройти препроцессинг.
Хорошо, вот я могу сгенерить makefile для nmake'а. Его то можно подцепить?

Хотя впрочем я то могу и для студии проект сгенерить. Вообще cmake рулит.

Но разве у вас нет желания другие компиляторы поддерживать?
У нас много желаний, но мало ресурсов.
Если сгенерируете и пришлете проект для qutim, то попробую его пощупать.
У меня есть, но он стопроцентов поломается при копировании: пути там абсолютные прописаны. Поэтому я могу лишь полный пакет сырцов залить, ссылку на cmake и краткую инструкцию по сборке. :)
Ну может обойдется — положу все туда, куда нужно. Или заменю пути в файле проекта. В общм пришлите, а я посмотрю, что там.
Всё равно нужны заголовочные файлы от Qt, разве нет? Плюс билд весит неприлично много.
QT положу тоже туда, куда нужно. По поводу билда не понял. И предлагаю переместиться в почту. karpov[@]viva64.com.
И вообще, посмотрите на работу утилиты scanbuild из состава clang, которая вообще может любым компилятором пользоваться и любой средой сборки.
Второй вопрос. Как у нас дела обстоят с динамическим анализом кода, то бишь с поиском ошибок в коде путем анализа работы приложения?
PVS-Studio выполняет только статический анализ исходного кода.

Разноплановый динамический анализ, как мне кажется, хорошо выполняют инструменты, входящие в Intel Parallel Studio.
У меня вопрос. Вы осуществляете синтаксический разбор кода и строите AST для анализа? Если не секрет, конечно.
<сарказм> Нет, мы методом Монте-карло разыгрываем наугад диагностические сообщения и номера строк в файлах. </сарказм>

Конечно же строим. Если есть вопросы — расскажем как, почему и зачем.
Если быть точнее, мы строим не AST, а дерево разбора. То есть не выбрасываем некоторые лишние узлы, которые для нас совсем не лишние. Они помогают выполнять ряд специфических проверок. После построения дерева ходим по нему и собираем различные данные, выполняем проверки.
а для других языков будет что-нибудь?
Сформировали письмо с результатами тестирования для команды WinMerge? :)
Еще нет. Вот как этот текст наш переводчик переведет, я его опубликую и пошлю им письмо со ссылкой и еще некоторыми комментариями.
а вы авторам об ошибках сообщили?
и сделайте плагин для intellij idea
Сообщим.
IntelliJ IDEA это вроде как для Java?
да, в основном для java
в ней уже есть статический анализатор, он иногда помогает, тривиальные ошибки видит
но ваш наверное лучше будет, если вы на этом специализируетесь
К стати не делать ошибки на этапе кодирования помогает стиль кода, например вставлять в сравнения lvalue справа и тому подобное.

А анализатор кода хорошо бы иметь в IDE. NB, которым я пользуюсь, иногда пишет замечания и изредка за ними стоят ошибки или опечатки.
для java существует похожий проект: FindBugs, есть в виде плагина к Eclipse.
Статический анализ хорош :-)
Для C# сделаете? ;)
Sign up to leave a comment.