Пользователи иногда спрашивают, как появляются новые диагностики в статическом анализаторе PVS-Studio. Мы отвечаем, что черпаем вдохновение из разнообразнейших источников: книг, стандартов кодирования, собственных ошибок, писем наших пользователей и так далее. Сегодня мы придумали новую интересную диагностику и решили рассказать историю, как это произошло.
Рубрика «ошибки в программе»
Пример, как в PVS-Studio появляются новые диагностики
2021-03-20 в 15:10, admin, рубрики: C, c++, CovidSim, MISRA, MISRA C, pvs-studio, баги, Блог компании PVS-Studio, информационная безопасность, качество кода, медицинское по, обзор кода, ошибки в коде, ошибки в программе, Программирование, Совершенный код, тестирование поБесплатный PVS-Studio для тех, кто развивает открытые проекты
2018-12-22 в 16:21, admin, рубрики: bitbucket, c/c++, C#, c++, cwe, devops, DevSecOps, free, github, java, MISRA, open source, pvs-studio, баги, бесплатная лицензия, Блог компании PVS-Studio, информационная безопасность, открытые проекты, ошибки в коде, ошибки в программе, Программирование, Си, сишарп, статический анализ кода![Бесплатный PVS-Studio для тех, кто развивает открытые проекты - 1 PVS-Studio free for open source](https://www.pvsm.ru/images/2018/12/22/besplatnyi-PVS-Studio-dlya-teh-kto-razvivaet-otkrytye-proekty.png)
В канун празднования нового 2019 года команда PVS-Studio решила сделать приятный подарок всем контрибьюторам open-source проектов, хостящихся на GitHub или Bitbucket. Им предоставляется возможность бесплатного использования статического анализатора PVS-Studio для развития открытых проектов.
Читать полностью »
LibreOffice: страшный сон бухгалтера
2018-10-19 в 6:35, admin, рубрики: bugs, C, c++, libreoffice, open source, pvs-studio, Блог компании PVS-Studio, ошибки в коде, ошибки в программе![LibreOffice: страшный сон бухгалтера - 1 LibreOffice: страшный сон бухгалтера - 1](https://www.pvsm.ru/images/2018/10/19/LibreOffice-strashnyi-son-buhgaltera.png)
LibreOffice — мощный офисный пакет, который бесплатен для частного, образовательного и коммерческого использования. Его разработчики делают замечательный продукт, который во многих сферах используется в качестве альтернативы Microsoft Office. Команде PVS-Studio всегда интересно взглянуть на код таких известных проектов и попробовать найти в них ошибки. В этот раз сделать это было легко. Проект содержит много ошибок, которые могут привести к серьёзным проблемам. В статье будут рассмотрены некоторые интересные дефекты, найденные в коде.
Введение
LibreOffice — очень крупный C++ проект. Поддерживать проект такого объёма — сложная задача для команды разработчиков. И, к сожалению, складывается впечатление, что качеству кода LibreOffice не удаётся уделять достаточного внимания.
С одной стороны, проект просто огромный, не каждый инструмент статического или динамического анализа осилит анализ 13к файлов исходного кода. Столько файлов участвует в сборке офисного пакета вместе со сторонними библиотеками. В основном репозитории LibreOffice хранится около 8к файлов исходного кода. Такой объём кода создаёт проблемы не только разработчикам:
![LibreOffice: страшный сон бухгалтера - 2 LibreOffice: страшный сон бухгалтера - 2](https://www.pvsm.ru/images/2018/10/19/LibreOffice-strashnyi-son-buhgaltera-2.png)
Команда PVS-Studio непредвзята при написании статей
2018-08-07 в 12:06, admin, рубрики: code review, pvs-studio, SAST, Блог компании PVS-Studio, комментаторы, обзор кода, ошибки в коде, ошибки в программе, статический анализ кода, тролли, Троллинг, честь и совестьНаша команда проверяет различные открытые проекты с помощью PVS-Studio и пишет о результатах анализа кода. Время от времени мы сталкиваемся со странными обвинениями в предвзятости. Думаем, что часто это «тролли», и вступать в дискуссии с ними не имеет смысла. С другой стороны, оставлять подобные комментарии совсем без ответа тоже не хочется. Поэтому я решил написать небольшую статью, чтобы иметь возможность отвечать одной ссылкой.
![Команда PVS-Studio непредвзята при написании статей - 1 Единорог в шоке от обсуждений](https://www.pvsm.ru/images/2018/08/07/komanda-PVS-Studio-nepredvzyata-pri-napisanii-statei.png)
PVS-Studio как SAST решение
2018-07-25 в 7:48, admin, рубрики: C, c/c++, C#, c++, CVE, cwe, devops, java, pvs-studio, SAST, Блог компании PVS-Studio, информационная безопасность, надежность программ, ошибки в коде, ошибки в программе, Программирование, Си, статический анализ кода, управление разработкой, уязвимости![PVS-Studio как SAST решение - 1 PVS-Studio и SAST](https://www.pvsm.ru/images/2018/07/25/PVS-Studio-kak-SAST-reshenie.png)
До недавнего времени в своих статьях мы позиционировали PVS-Studio как инструмент для выявления ошибок в коде. При этом мы почти не рассматривали PVS-Studio в контексте безопасности. Попробуем немного исправить эту ситуацию и взглянем на инструмент с точки зрения тестирования защищённости приложений и DevSecOps практик.
Читать полностью »
PVS-Studio — дополнительная страховка медицинского программного обеспечения
2018-03-20 в 11:59, admin, рубрики: 64-битные ошибки, C, c/c++, c++, code review, Therac-25, Блог компании PVS-Studio, встраиваемые системы, здоровье, информационная безопасность, качество кода, медицина, медицинские технологии, МРТ, надежность программ, обзор кода, ответственность, ошибки в коде, ошибки в программе, Си, си/си++, статический анализ кода, статический анализатор кода, Тестирование IT-систем, управление проектами, управление разработкойОшибки в программном обеспечении могут приводить не только к материальным потерям, но и повредить здоровью людей. Например, артисты на сцене театра могут получить травму, если вдруг одна из декораций начнёт опускаться на сцену не вовремя. Однако более очевидна взаимосвязь между ошибками в коде и вредом здоровью в медицинском программном обеспечении. Давайте поговорим на эту тему.
Читать полностью »
Как программисты с PVS-Studio ошибки в проектах искали
2017-12-04 в 11:14, admin, рубрики: C, C#, c++, open source, pinguem.ru, pvs-studio, баги, Блог компании PVS-Studio, конкурс, конкурсы, ошибки в коде, ошибки в программе, статический анализ кодаНедавно сайт Pinguem.ru совместно с командой PVS-Studio устраивали конкурс, в котором программистам было необходимо в течение месяца использовать статический анализатор PVS-Studio для нахождения и исправления ошибок в коде open-source проектов. Благодаря их стараниям, программы в мире стали чуточку безопаснее и надежнее. В статье мы рассмотрим парочку наиболее интересных ошибок, которые были найдены при помощи PVS-Studio.
![Как программисты с PVS-Studio ошибки в проектах искали - 1 Picture 13](https://www.pvsm.ru/images/2017/12/04/kak-programmisty-s-PVS-Studio-oshibki-v-proektah-iskali.png)
Время устранять ошибки в Open-Source проектах, конкурс
2017-10-25 в 7:38, admin, рубрики: C, C#, c++, open source, pinguem.ru, pvs-studio, баги, Блог компании PVS-Studio, конкурс, конкурсы, ошибки в программе, си/си++, статический анализ кодаСайт Pinguem.ru и команда PVS-Studio организуют конкурс, посвященный повышению качества открытого программного обеспечения. Для победы в конкурсе необходимо исправить как можно больше ошибок в одном или нескольких открытых проектах. Ошибки должны быть обнаружены с помощью статического анализатора кода PVS-Studio. Главный приз: консоль PlayStation 4 Pro.
Правила конкурса на сайте Pinguem.ru. Участвовать в конкурсе.
Читать полностью »
Зло живёт в функциях сравнения
2017-05-19 в 13:44, admin, рубрики: bugs, C, C#, c++, pvs-studio, Блог компании PVS-Studio, зло, код, ошибки в коде, ошибки в программе, Программирование, психология программирования, Си, юнит-тесты
Возможно, читатели помнят мою статью под названием «Эффект последней строки». В ней идёт речь о замеченной мной закономерности: ошибка, чаще всего, допускается в последней строке однотипных блоков текста. Теперь я хочу рассказать о новом интересном наблюдении. Оказывается, программисты тяготеют к тому, чтобы допустить ошибку в функциях сравнения двух объектов. Такое утверждение выглядит неправдоподобным, однако, я покажу огромное количество примеров ошибок, которые шокируют читателя. Читайте новое исследование, будет интересно и страшно.
Читать полностью »
Статья о статическом анализе кода для менеджеров, которую не стоит читать программистам
2017-04-14 в 14:18, admin, рубрики: bugs, C, c/c++, C#, c++, devops, pvs-studio, static code analysis, Блог компании PVS-Studio, информационная безопасность, качество кода, ошибки в коде, ошибки в программе, Си, статический анализ кода, управление персоналом, Управление продуктом, управление проектами, управление разработкой
Если вы считаете себя хорошим программистом, ну, скажем так, вы оцениваете свой уровень выше среднего, прошу не читать эту статью. Эта статья предназначена для менеджеров программных проектов. С ними я хочу обсудить хотя и важные, но скучные для программистов вопросы, связанные с методологией статического анализа кода.
Читать полностью »