Диагностика GCC — это здорово, но этого недостаточно

Многие разработчики игнорируют методологию статического анализа кода. На самом деле это огромная ошибка, потому что они лишают себя инструментов, которые помогают устранять ошибки на этапе написания кода и экономят время на тестирование и отладку приложений. Одним из факторов такого неразумного поведения является уверенность в том, что компиляторы уже выдают предупреждения для всех опасных конструкций.

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

Рассмотрим практические примеры и прочитаем статью Андрея Карпова, разработчика статического анализатора кода PVS-Studio: Поиск ошибок в коде компилятора GCC с помощью PVS-Studio.

Да, компилятор C ++, реализованный в GCC, использует много полезных диагностик. Эти диагностики очень полезны, но все же PVS-Studio обнаружил ошибки в коде компилятора.

Разработчики GCC, обсуждая эту статью, пришли к выводу, что было бы полезно реализовать несколько новых диагностик, основанных на предупреждениях PVS-Studio. Это как раз тот случай, как уже упоминалось ранее, когда компиляторы берут диагностику с анализаторов. Мы также должны понимать, что платные инструменты, такие как PVS-Studio, продолжают развиваться и получать все больше диагностических возможностей. Это основная задача PVS-Studio — опережать компиляторы.

См. также:  Что происходит, когда вы запускаете «gcc main.c»?
Понравилась статья? Поделиться с друзьями:
IT Шеф
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: