Анализатор PVS-Studio регулярно пополняется новыми диагностическими правилами. Что интересно, часто диагностики обнаруживают подозрительные фрагменты кода еще до окончания всех работ. Например, в процессе тестирования на open-source проектах. Одной из подобных интересных 'находок' и хотелось бы поделиться сегодня с вами.
Рубрика «Блог компании PVS-Studio» - 3
C# программист, испытай себя — найди ошибку
2021-02-01 в 12:30, admin, рубрики: .net, C#, csharp, pvs, pvs-studio, Блог компании PVS-Studio, ПрограммированиеONLYOFFICE Community Server: как баги способствуют возникновению проблем с безопасностью
2020-12-17 в 7:06, admin, рубрики: .net, C#, onlyoffice, open source, pvs-studio, static analysis, Блог компании PVS-Studio, информационная безопасность
В наши обзоры ошибок программ с отрытым исходным кодом редко попадают серверные сетевые приложения. Наверное, это связано с их популярностью. Ведь мы стараемся обращать внимание на проекты, которые нам предлагают сами читатели. А серверы часто выполняют очень важные функции, но их деятельность и польза остаётся невидимой для большинства пользователей. Так, чисто случайно, был проверен код ONLYOFFICE Community Server. Получился очень весёлый обзор.
Читать полностью »
Хорошо ли вы помните nullable value types? Заглядываем «под капот»
2020-10-30 в 12:34, admin, рубрики: .net, C#, cil, cli, clr, CoreCLR, il, microsoft, Nullable, Блог компании PVS-Studio
В последнее время модной темой стали nullable reference types. Однако старые добрые nullable value types никуда не делись и всё так же активно используются. Хорошо ли вы помните нюансы работы с ними? Предлагаю освежить или проверить свои знания, ознакомившись с этой статьёй. Примеры кода на C# и IL, обращения к спецификации CLI и коду CoreCLR прилагаются. Начать предлагаю с интересной задачки.
Читать полностью »
Продолжение: обидно за мнения про статические анализаторы кода
2020-10-16 в 7:36, admin, рубрики: C, c++, pvs-studio, volatile, Блог компании PVS-Studio, опечатки, ошибки в коде, С++, Си, Совершенный код, статический анализ кода, статический анализатор кода
Планировалось, что, написав статью "Обидно за мнения про статические анализаторы кода", мы выговоримся и спокойно отпустим тему. Но неожиданно эта статья вызвала бурный отклик. К сожалению, обсуждение пошло не туда, и сейчас мы сделаем вторую попытку объяснить своё видение ситуации.
Читать полностью »
Обидно за мнения про статические анализаторы кода
2020-10-12 в 13:30, admin, рубрики: C, c++, pvs-studio, Блог компании PVS-Studio, Программирование, Си, статический анализ кода, статический анализатор кодаИнструменты статического анализа кода ушли далеко вперёд. Это вовсе не те "линтеры", которые активно применялись 20 лет тому назад. Однако многие по-прежнему относятся к ним как к очень простым инструментам. Обидно. Обидно как за методологию анализа кода в целом, так и за инструмент PVS-Studio.
Проверка QEMU с помощью PVS-Studio
2020-09-04 в 6:53, admin, рубрики: C, c++, open source, programming, qemu, virtual machine, Блог компании PVS-Studio, Программирование, С++
QEMU – достаточно известное приложение для эмуляции. Статический анализ может помочь разработчикам таких сложных проектов, как QEMU, отлавливать ошибки на раннем этапе и в целом повысить его качество и надёжность. В этой статье будет проверен исходный код приложения QEMU на потенциальные уязвимости и ошибки с помощью инструмента статического анализа PVS-Studio.
Читать полностью »
PVS-Studio теперь в Compiler Explorer
2020-07-06 в 12:25, admin, рубрики: C, c++, Compiler Explorer, godbolt.org, online code analysis, online compilers, pvs-studio, static code analysis, Блог компании PVS-Studio, Компиляторы, Программирование
Совсем недавно произошло знаменательное событие: PVS-Studio появился в Compiler Explorer! Теперь вы можете быстро и легко проанализировать код на наличие ошибок прямо на сайте godbolt.org (Compiler Explorer). Это нововведение открывает большое количество новых возможностей – от утоления любопытства по поводу способностей анализатора до возможности быстро поделиться результатом проверки с другом. О том, как использовать эти возможности, и пойдёт речь в этой статье. Осторожно – большие гифки!
Читать полностью »
Как внедрить статический анализатор кода в legacy проект и не демотивировать команду
2020-06-20 в 14:05, admin, рубрики: devops, DevSecOps, pvs-studio, Блог компании PVS-Studio, информационная безопасность, качество кода, Программирование, Совершенный код, старый код, статический анализ кода, статический анализатор кода, Управление продуктом
Попробовать статический анализатор кода легко. А вот, чтобы внедрить его, особенно в разработку большого старого проекта, потребуется умение. При неправильном подходе анализатор может добавить работы, замедлить разработку и демотивировать команду. Давайте кратко поговорим, как правильно подойти к интеграции статического анализа в процесс разработки и начать его использовать как часть CI/CD.
Читать полностью »
DeepCode: взгляд со стороны
2020-04-10 в 7:25, admin, рубрики: c++, DeepCode, machine learning, pvs-studio, static code analysis, Блог компании PVS-Studio, машинное обучение
Не так давно DeepCode, статический анализатор, основанный на машинном обучении, стал поддерживать проверку C и C++ проектов. И теперь мы можем на практике взглянуть, чем отличаются результаты классического статического анализа и статического анализа, основанного на машинном обучении.
Читать полностью »
Начало коллекционирования ошибок в функциях копирования
2020-04-04 в 8:37, admin, рубрики: bugs, C, c++, memcpy, static code analysis, баги, Блог компании PVS-Studio, ошибки в коде, Си, статический анализ кода
Уже несколько раз замечал, что программисты допускают ошибки в простых функциях копирования данных. Эта тема потребует в будущем ещё много времени для изучения и подбора материала, чтобы написать основательную статью. Но захотелось поделиться парой примеров, недавно замеченных мною.
Читать полностью »