id summary reporter owner description type status milestone component version severity resolution keywords cc 8994 Design complexity prevents compiler optimizations Andrey Semashev Thomas Heller "While debugging my application I discovered that the compiler (gcc 4.6 with -O3) fails to optimize even the simplest Boost.Phoenix v3 expressions. For example, the following function object: {{{ phoenix::bind(&media_session::set_local_description, &session(), boost::cref(sdp)) }}} when invoked, generates 7 (seven) nested operator()/eval calls before actually reaching the media_session::set_local_description method. This doesn't take into account any other possible overhead that I'm not seeing in the stack backtrace. Changing phoenix::bind to boost::bind reduces this backtrace to only 3 operator() calls before media_session::set_local_description is reached. Please, simplify the library to improve its efficiency. As a side note, the complicated design of the library also increases compile times and possibly resulting binary sizes (I haven't done any research on the latter, but I was suggested that in ticket #8820). " Bugs closed To Be Determined phoenix Boost 1.53.0 Problem worksforme