id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 6750,istream_iterator in spirit might have defect,Li He ,Joel de Guzman,"The following program yields a wrong parsing result: {{{ #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::double_ ; using qi::_1 ; using phoenix::push_back ; using phoenix::ref ; int main (int argc, char* argv[]) { spirit::istream_iterator iter (std::cin), end ; std::vector v ; bool r = spirit::qi::phrase_parse (iter, end, double_ [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 ; } }}} You may test it with input like ""1,2,3,4"" and the output is ""vector: 1,2,3,44,"". When we switch to std::getline and use the std::string::const_iterator, the result turns out fine.",Bugs,closed,To Be Determined,spirit,Boost 1.49.0,Problem,fixed,istream_iterator,