Facebook открыл код проекта warp, в рамках которого подготовлен высокопроизводительный препроцессор для языков C и C++. Внутри компании препроцессор warp используется в качестве быстрой замены препроцессора cpp из состава GCC. Кроме GCC, warp также может использоваться совместно с Clang. warp написан на языке D, основной автор кода - Уолтер Брайт (Walter Bright), автор компилятора Zortech C++ и создатель языка программирования D. Код warp опубликован на Github под свободной лицензией BSL (Boost Software License).

Одной из ключевых особенностей warp является кэширование препроцессором результатов разбора файлов С/C++. Из-за того, что стадия разбора кода С++ является относительно медленной операцией, использование warp позволяет сократить время пересборки в условиях работы команд разработчиков над большими программными проектами и, таким образом, увеличить эффективность разработки за счёт снижения времени ожидания. В тесте пересборки крупного программного проекта с большим числом зависимостей после изменения одного заголовочного файла при использовании warp вместо штатного препроцессора из состава GCC наблюдается уменьшение времени пересборки от 10 до 40%, в зависимости от особенностей кодовой базы.

Источник: http://www.opennet.ru/opennews/art.shtml?num=39439