Разработка новой C# диагностики. Как мы это делаем, от идеи до прототипа

15 марта 2017 г.

Разработка диагностики V3133.
В этом видео будет кратко показано, как разрабатываются новые диагностики для статического анализатора PVS-Studio на примере новой C# диагностики. Будет продемонстрировано, как идея или случайно найденная ошибка в коде превращается в полноценную диагностику.

P.S. Поскольку данная диагностика разрабатывалась в режиме live, то в коде была допущена небольшая ошибка, которая в конечном итоге не влияет на работу диагностики. Это еще раз доказывает, что никто не застрахован от ошибок и статический анализатор является лучшим другом для программиста. Ошибку можно увидеть в коде диагностики на строке 26. На самом деле вместо node.Dec... нужно использовать node.Right.Dec..., так как инкремент или декремент мы ищем только в правой части выражения. Но поскольку в левой части выражения может быть только переменная, это не повлияло на корректность работы диагностики.

Все диагностики - https://www.viva64.com/ru/w/


Найденные ошибки

Проверено проектов
411
Собрано ошибок
14 123

А ты совершаешь ошибки в коде?

Проверь с помощью
PVS-Studio

Статический анализ
кода для C, C++, C#
и Java

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