$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
From: Loïc Joly (loic.joly_at_[hidden])
Date: 2006-08-09 13:22:17
Rob Caldecott a écrit :
> I am using the Boost unit test suite for the first time, but am having a 
> problem using BOOST_CHECK_EQUAL with wide strings.  For example:
> 
>     std::wstring str1 = L"unit";
> 
>     std::wstring str2 = L"test";
> 
>     BOOST_CHECK_EQUAL(str1, str2);
> 
> This produces the following error:
> 
> c:\boost\include\boost-1_33_1\boost\test\test_tools.hpp(274) : error C2679: 
> binary '<<' : no operator found which takes a right-hand operand of type 
> 'const std::wstring' (or there is no acceptable conversion)
Boost::test may want to display the values of those wide strings on a 
narrow stream if the test fails, thus your error.
Try adding something like
namespace std {
inline std::ostream& operator<<(std::ostream& out, const std::wstring& 
value)
{
     out << ConvertWstringToString(value);
     return out;
}
}
With some appropriate definition for ConvertWstringToString.
-- Loïc