The code fragment below does not compile. The problem seems to be related
to wide character support.
MSVC6 works without problems.
#include
int main(void)
{
boost::lexical_cast(4);
return 0;
}
Here are the resulting error messages:
C:\devel\BOOST\1.30.0\win32-msvc7\include\boost\lexical_cast.hpp(162) :
error C2679: binary '=' : no operator found which takes a right-hand
operand of type 'std::basic_stringstream<_Elem,_Traits,_Alloc>::_Mystr' (or
there is no acceptable conversion)
with
[
_Elem=wchar_t,
_Traits=std::char_traits,
_Alloc=std::allocator
]
C:\devel\BOOST\1.30.0
\win32-msvc7\include\boost\lexical_cast.hpp(158) : while compiling
class-template member function 'bool
boost::detail::lexical_stream::operator >>(std::string &)'
with
[
Target=std::string,
Source=unsigned short
]
C:\devel\BOOST\1.30.0
\win32-msvc7\include\boost\lexical_cast.hpp(190) : see reference to class
template instantiation 'boost::detail::lexical_stream' being
compiled
with
[
Target=std::string,
Source=unsigned short
]
C:\devel\ICOSOFT\PROJECTS\Applications\H\HelloWorld\main.cpp(5) :
see reference to function template instantiation 'Target
boost::lexical_cast?$@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@G(Source)'
being compiled
with
[
Target=std::string,
Source=unsigned short
]
Best regards, Peter.