Facebook открывает исходный код анализатора кода C++ Flint

13:35 27.02.2014

|   1069 прочтений



Анализатор программного кода на языке C++ под названием Flint разработал известный программист Андрей Александреску, в настоящее время работающий в Facebook. Программы такого рода предназначены для проведения так называемого статического анализа кода — то есть поиска в тексте программ недочетов, ошибок или несоответствий принятым правилам программирования, которые не может обнаружить компилятор. Для языка C++ создано немало анализаторов, но ни один из полностью не устраивал специалистов Facebook — многие отличались невысокой скоростью работы или отсутствием поддержки стандарта C++11, на который сейчас переходят в Facebook. Александреску написал Flint на языке D, в разработке которого он сам активно участвовал. Благодаря этому Flint работает на 5-25% быстрее аналогичных программ, написанных на C++.

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


Теги: Программное обеспечение