K>Да, если юзать спирит, нужно вставить побольше RAM в compile-сервер
Нужно разбивать описание грамматик на части помельче. Что любопытно, MSVC давал в таких местах ворнинг а gcc сегфолт.
И у спирита есть ещё одна фича(?) — тот кто написал вещи типа:
( *( bs::anychar_p - bs::ch_p( 0x1F ) - bs::ch_p( '"' ) ) )[ bs::assign_a( attr.StrValue ) ]>> !bs::ch_p( 0x1F );
тот становится незаменим при поддержки кода. Если такой бусто-спиритист уходит из команды, то проще переписать.