Пятница, 05 Октября 2018 г. 09:40
+ в цитатник
Для пополнения списка языков программирования с открытым исходным кодом, которые были проверены с помощью статического анализатора кода PVS-Studio, был выбран Perl 5. Эта статья о найденных ошибках и трудностях просмотра результатов анализа. Количество макросов в коде столь велико, что создаётся ощущение, что код написан не на языке Си, а на каком-то его странном диалекте. Несмотря на затруднения при просмотре кода, удалось насобирать интересные проблемы, о которых и будет рассказано в этой статье.
Введение
Perl — высокоуровневый интерпретируемый динамический язык программирования общего назначения (Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages). Разработка Perl 5 была начата в 1994 году. Спустя пару десятилетий, код на языке Си с многочисленными макросами вызывает нервозность у современных программистов.
Исходный код Perl 5 был взят из официального
репозитория (ветка
blead). Для проверки проекта использовался статический анализатор кода
PVS-Studio. Анализ проводился на операционной системе Linux, но анализатор также доступен для Windows и macOS.
Просмотр результатов анализа был не простой задачей. Дело в том, что анализатор проверяет
препроцессированные .i файлы, в которых уже раскрыты все директивы препроцессора, а выдаёт предупреждения на файлы с исходным кодом. Это правильное поведение анализатора, ничего менять не нужно, но много предупреждений выдаётся на макросы! А за макросами скрывается нечитабельный код.
Читать дальше -> https://habr.com/post/425415/?utm_source=habrahabr&utm_medium=rss&utm_campaign=425415
Метки:
perl
open source
C++
Блог компании PVS-Studio
статический анализ кода
компиляторы
pvs-studio
static code analysis
perl5
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-