id summary reporter owner description type status milestone component version severity resolution keywords cc 6751 phoenix v3 yields compilation failure in spirit Li He Thomas Heller "Here is a simple code {{{ //#define BOOST_SPIRIT_USE_PHOENIX_V3 1 #include #include #include #include #include #include #include #include #include namespace spirit = boost::spirit ; namespace qi = boost::spirit::qi ; namespace ascii = boost::spirit::ascii ; namespace phoenix = boost::phoenix ; using qi::int_ ; using qi::_1 ; using phoenix::push_back ; using phoenix::ref ; using phoenix::if_ ; int main (int argc, char* argv[]) { std::string line ; std::getline (std::cin, line) ; std::vector v ; bool r = spirit::qi::phrase_parse (line.begin (), line.end (), int_ [if_(_1 % 2 == 0)[push_back (ref(v), _1)]] % ',', ascii::space) ; if (r) { std::cout << ""vector: "" ; std::copy (v.begin(), v.end(), std::ostream_iterator (std::cout, "", "")) ; std::cout << std::endl ; } return 0 ; } }}} Uncommenting the first line will trigger compilation errors." Bugs closed To Be Determined spirit Boost 1.49.0 Problem invalid spirit, phoenix