Search
Write a publication
Pull to refresh
44
0
Михаил Гельвих @Mixxxxa

C++ Разработчик

Send message

Как мы добавляли поддержку Apple Silicon в анализатор (arm64)

Level of difficultyEasy
Reading time5 min
Views872

С выходом PVS-Studio 7.34 стали доступны нативные сборки анализатора для macOS на архитектуре Apple Silicon (ARM). В этой заметке мы хотели бы подробнее рассказать о проделанной работе, а также предложить советы по портированию кроссплатформенных инструментов на новую перспективную архитектуру.

Читать далее

Пользовательские аннотации кода для PVS-Studio

Level of difficultyMedium
Reading time6 min
Views665

Как часто ваш статический анализатор не справляется с пониманием нюансов исходного кода? Наверняка это происходит чаще, чем хотелось бы. В этой статье мы расскажем о том, как мы с этим боролись, а именно о нашем новом механизме пользовательских аннотаций.

Читать далее

Как не надо проверять размер массива в С++

Level of difficultyMedium
Reading time7 min
Views28K

Как часто вам приходится сталкиваться с конструкцией sizeof(array)/sizeof(array[0]) для определения размера массива? Очень надеюсь, что не часто, ведь на дворе уже 2024 год. В заметке поговорим о недостатках конструкции, откуда она берётся в современном коде и как от неё наконец избавиться.

Читать далее

Qt Creator* ищет ошибки в Qt Creator

Reading time19 min
Views4.6K

Как-то так странно получилось, что у нас уже почти год как существует и поддерживается плагин PVS-Studio для Qt Creator. И при этом мы до сих пор не выпустили хорошей статьи с проверкой самой IDE. Исправляем сие недоразумение и предлагаем вам посмотреть, чем живёт недавно переродившаяся среда для разработки.

Читать далее

Почему в С++ массивы нужно удалять через delete[]

Reading time4 min
Views19K

Заметка рассчитана на начинающих C++ программистов, которым стало интересно, почему везде твердят, что нужно использовать delete[] для массивов, но вместо внятного объяснения – просто прикрываются магическим "undefined behavior". Немного кода, несколько картинок и взгляд под капот компиляторов – всех заинтересованных прошу под кат.


delete_or_delete_for_array_ru/image1.png

Читать дальше →

CWE Top 25 2022. Обзор изменений

Reading time8 min
Views7K

Список CWE Top 25 отражает наиболее серьёзные недостатки безопасности ПО. Предлагаю вам ознакомиться с обновлённым топом в обзоре изменений за прошедший год.


CWE_top_25_2022_ru


Читать дальше →

Судьба баг-репорта

Reading time5 min
Views2.3K

Довольно частый (и логичный) вопрос к нашим статьям с проверкой открытых проектов: отправляются ли разработчикам баг-репорты? Так вот, ответ – да. Более того, мы на этом не останавливаемся и иногда отслеживаем прогресс. Сегодня хотелось бы рассказать об одном из случаев, где именно эта педантичность предотвратила фиктивное исправление бага.


0921_destiny_of_a_bug_report_ru/image1.png

Читать дальше →

Проверка Chromium спустя три года. Ну и как оно?

Reading time19 min
Views9K

Стряхиваем пыль с нашего нерегулярного цикла статей о проверке проекта Chromium. Посмотрим, как обстоят дела с качеством кода в свежем релизе популярнейшего браузера-конструктора, а заодно проверим в деле новейшие функции анализатора PVS-Studio.


chromium_N7_ru/image2.png

Читать дальше →

CWE Top 25 2021. What is it, what is it for and how is it useful for static analysis?

Reading time7 min
Views1.1K

For the first time PVS-Studio provided support for the CWE classification in the 6.21 release. It took place on January 15, 2018. Years have passed since then and we would like to tell you about the improvements related to the support of this classification in the latest analyzer version.


https://import.viva64.com/docx/blog/0869_CWE_status/image1.png


Read more →

CWE Top 25 2021. Что такое, с чем едят и чем полезен при статическом анализе?

Reading time8 min
Views16K

Впервые поддержка классификации CWE появилась в PVS-Studio с релизом 6.21, который состоялся 15 января 2018 года. С тех пор прошло уже очень много времени, и хотелось бы рассказать об улучшениях, связанных с поддержкой этой классификации в последних версиях анализатора.


https://import.viva64.com/docx/blog/0869_CWE_status_ru/image1.png


Читать дальше →

Проверка BitTorrent в честь 20-летнего юбилея. Время == качество

Reading time10 min
Views5.9K

Пару недель назад (а если быть точнее, то 2 июля 2021 года) исполнилось двадцать лет легендарному протоколу BitTorrent. Созданный Брэмом Коуэном (Bram Cohen) протокол с момента своего появления стремительно развивался и быстро стал одним из самых популярных способов для обмена файлами. Почему бы в честь этого не проверить парочку долгоживущих тематических проектов с помощью анализатора PVS-Studio для Linux?


0846_BitTorrent_ru/image1.png

Читать дальше →

Checking BitTorrent in honor of the 20th anniversary. Time == quality

Reading time9 min
Views976

Couple of weeks ago (or to be more precise, on July 2, 2021), the legendary BitTorrent protocol turned twenty years old. Created by Bram Cohen, the protocol has been developing rapidly since its inception, and has quickly become one of the most popular ways to exchange files. So why not check out a couple of long-lived related projects with the PVS-Studio analyzer for Linux?


0846_BitTorrent/image1.png

Read more →

Information

Rating
5,724-th
Works in
Registered
Activity

Specialization

Software Developer
Senior
C++
Python
Embedded system