Yes, the streaming operator I ended up trying and it worked (after I posted), but one thing I left out in my original post was the fact that I had an overloaded casting operator to std::string, which I figured would fix the issue just as well as the stream operator would. I was wrong, and that is what motivated me originally to post.

As far as this problem is concerned, however, it's solved.

On Fri, May 2, 2008 at 3:36 PM, Sohail Somani <sohail@taggedtype.net> wrote:
Robert Dailey wrote:
[snip]

> Anyway, I have a class named "Foo", and I've given it an overloaded
> boolean == operator. When I do the following, it fails to compile under
> MSVC9:

Dude, read the error:

[snip]

> 1>c:\it\tfs\crusades\sdks\boost\boost\test\test_tools.hpp(342) : error
> C2679: binary '<<' : no operator found which takes a right-hand operand
> of type 'const Foo' (or there is no acceptable conversion)

No operator<< not ==. Boost test has something like this for
CHECK_EQUAL(a,b):

if(a!=b) { cout << "omg a!=b [a=" << a << ", b=" << b << "]" }

--
Sohail Somani
http://uint32t.blogspot.com
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users