Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2003-03-19 07:47:39


At 03:13 AM 3/19/2003, Terje Slettebø wrote:

>Ok, it seems we may have to exclude wide character support for
lexical_cast
>on MSVC 6, to avoid breaking Date/Time. I suggest something like:
>
>#if defined(BOOST_NO_STRINGSTREAM) || \
> defined(BOOST_NO_STD_WSTRING) || \
> defined(BOOST_NO_STD_LOCALE) || \
> defined(BOOST_NO_CWCHAR) || \
> defined(BOOST_MSVC) && (BOOST_MSVC <= 1200)
>#define DISABLE_WIDE_CHAR_SUPPORT
>#endif
>
>(Testing for BOOST_NO_INTRINSIC_WCHAR_T, instead, would also disable wide
>character support on Intel C++ (on Windows), which does work with
>lexical_cast)
>
>I've tested this with Date/Time's testclock.cpp (one of the failing
tests)
>on MSVC 6 and Intel C++ 7, and it now works.
>
>On the plus side, it appears to now work on g++ 2.95.

OK, the full Win32 tests are posted. The date-time tests are now passing.

lexical_cast_test itself is failing for VC++ 6.0. See below.

I don't consider this a showstopper, but if you want to try a fix that is
OK - we need to wait a bit while the Python folks test changes they've
recently committed.

--Beman

lexical_cast_test.cpp D:\boost\site-RC_1_30_0\boost/lexical_cast.hpp(147) :
error C2679: binary '<<' : no operator defined which takes a right-hand
operand of type 'const class std::basic_string<unsigned short,struct
std::char_traits<unsigned short>,class std::allocator<unsigned short> >'
(or there is no acceptable conversion)
D:\boost\site-RC_1_30_0\boost/lexical_cast.hpp(146) : while compiling
class-template member function 'bool __thiscall
boost::detail::lexical_stream<unsigned short,class
std::basic_string<unsigned short,struct std::char_traits<unsigned
short>,class std::allocator<unsigned short> > >::operator <<(const class
std::basic_string<unsigned short,struct std::char_traits<unsigned
short>,class std::allocator<unsigned short> > &)'


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk