All streams
Search
Write a publication
Pull to refresh
612
16
Андрей Карпов @Andrey2008

Директор по развитию бизнеса

Send message
Вот это пример интересный. Спасибо. Правда как его ловить (пока) не знаю.
Не интересно. Про это скажет и компилятор:
warning C4706: assignment within conditional expression
Хочется увидеть те примеры, которые на ловятся компилятором.
Если наболело что-то еще, и это не обнаруживается компилятором, то предлагаю поделиться — Собираю страшненькое от программистов.
Там я был. Прикольный сайт. Но это не то. Кстати рекомендую посетить. Многое порадует и посмешит.
Интересный пример. Я даже записал эго в список паттернов, который я создаю впрок для последующей реализации в PVS-Studio. Сейчас анализатор не производит межмодульный анализ. Но возможно через несколько версий мы и до него доберемся. Ресурсов маловато.

Вопрос не в тему. Вы используете что-то из инструментов статического анализа при разработке?

Оказывается я написал здесь неправду. В примере с CharUpperW ошибки нет. И к сожалению меня никто не поправил. Сам заметил, когда решил реализовать аналогичное правило в PVS-Studio.

Дело в том, что CharUpperW может работать как со строкой, так и с отдельными символами. Если старшая часть указателя нулевая, то считается что это не указатель, а символ. Интерфейс WIN API в этом конечно месте опечалил своей кривизной, но код в Notepad++ написан корректно.

Кстати, теперь получается, что Intel C++ вообще не нашел ни одной ошибки.
Я знаю, какой комментарий сейчас будет обязательно написан, поэтому попробую заранее поделиться личным мнением. Моему коллеге, будет высказано, а возможно теперь и нет, следующее замечание:

Это исследование левое/неполное/предвзятое, так как я знаю, что в нашем институте ИПС/ИСП/МГУ/… много людей работает над тематикой создания инструментов для параллельного программирования/параллельной отладки/автоматического распараллеливания.

Так вот, не спорю, работают. Но давайте будем взрослыми людьми и согласимся, что освоить грант и написать статью с формулой в журнал ВАК, это совсем не тоже самое, чем иметь сайт продукта, документацию, поддержку и ВОЗМОЖНОСТЬ СКАЧАТЬ ДИСТРИБУТИВ. Именно по этому, всех этих десятков или даже сотен «инструментов», и нет в исследовании.

Нет дистрибутива — нет инструмента. Точка.
Конечно. Но подобные фильтр часто возможно сделать только когда мы знаем много о контексте, то есть храним много данных.
Не все сразу. Я жду перевода статей. Потом я их опубликую и отошлю ссылки людям с некоторыми комментариями и дополнениями.
QT положу тоже туда, куда нужно. По поводу билда не понял. И предлагаю переместиться в почту. karpov[@]viva64.com.
Сообщим.
IntelliJ IDEA это вроде как для Java?
Еще нет. Вот как этот текст наш переводчик переведет, я его опубликую и пошлю им письмо со ссылкой и еще некоторыми комментариями.
Ну может обойдется — положу все туда, куда нужно. Или заменю пути в файле проекта. В общм пришлите, а я посмотрю, что там.
У нас много желаний, но мало ресурсов.
Если сгенерируете и пришлете проект для qutim, то попробую его пощупать.
Если быть точнее, мы строим не AST, а дерево разбора. То есть не выбрасываем некоторые лишние узлы, которые для нас совсем не лишние. Они помогают выполнять ряд специфических проверок. После построения дерева ходим по нему и собираем различные данные, выполняем проверки.
PVS-Studio выполняет только статический анализ исходного кода.

Разноплановый динамический анализ, как мне кажется, хорошо выполняют инструменты, входящие в Intel Parallel Studio.

Information

Rating
461-st
Works in
Date of birth
Registered
Activity

Specialization

Specialist
C++
C
Software development