id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 4009,lexical_cast to multimember object fails,Darko Veberic ,nasonov,"According to the documentation, the only relevant requirement for the lexical_cast(source) is that the target is input-streamable. Having a simple class {{{ struct Foo { int fA; int fB; }; }}} with input operator {{{ istream& operator>>(istream& is, Foo& f) { return is >> f.fA >> f.fB; } }}} should satisfy all the requirements. Nevertheless, the code {{{ const string s = ""137 13""; const Foo f = lexical_cast(s); }}} compiles without any warnings (g++ 4.4.1) but eventually throws a bad_lexical_cast exception. Of course, using a non-optimized non-boost version of the lexical cast {{{ template T LexicalCast(const U& u) { stringstream ss; ss << u; T t; if (ss >> t) return t; else throw bad_lexical_cast(); } }}} works fine for the class in the example above. Are there additional requirements on the target type that are not mentioned in the documentation or is this a really severe bug?",Bugs,closed,Boost 1.43.0,lexical_cast,Boost 1.40.0,Not Applicable,fixed,,darko.veberic@…