#5732 closed Tasks (fixed)
small bugfixes and refactoring for lexical_cast
Reported by: | Antony Polukhin | Owned by: | Antony Polukhin |
---|---|---|---|
Milestone: | Boost 1.48.0 | Component: | lexical_cast |
Version: | Boost Development Trunk | Severity: | Problem |
Keywords: | Cc: |
Description
lexical_cast requires refactoring:
- reduce templates count
- leave only one lexical converting class (at least for modern compilers)
- fix small TODOs and XXXs from source code
- make lexical_stream_limited_src more readable
- update status/explicit-failures-markup.xml
small bugs to fix:
- make lexical_cast_inf_nan_test.cpp pass on Itanium pltform
- make lexical_cast able to convert signed and unsigned chars to wchar_t and update lexical_cast_wchars_test
Attachments (1)
Change History (13)
comment:1 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:2 by , 11 years ago
follow-up: 6 comment:4 by , 11 years ago
the last patches broke some of my code which uses lexical_cast to parse values from std::vector<char>
Something as simple as
std::vector<char> buffer; return boost::lexical_cast<int>(&buffer[0]);
fails with
BOOST_ROOT/boost/lexical_cast.hpp:1091:43: error: no matching constructor for initialization of 'std::basic_ostream<char>'
std::basic_ostream<CharT> stream(&stringbuffer);
~
this is the start of the clang diagnostic.
Both gcc (Ubuntu 4.6.0-3~ppa1) 4.6.1 20110409 (prerelease) and clang version 3.0 (trunk 135897)
output contained in attached testcase lex.tar.gz
(In [73313]) Fixes #5732.