June 06, 2008
Hi Matthew,

I suspect something has broken the STLSOFT_[MESSAGE_]ASSERT() macro
with visual C++ 6 and 8 (possibly 7 also). See below.

Cheers, Martin.
___

* Test program:

#include <stlsoft/stlsoft.h>
#include <iostream>     // std::cout, std::endl

int main()
{
   std::cerr << "\tBefore STLSOFT_MESSAGE_ASSERT( \"test\", 0 )" << std::endl;

   STLSOFT_MESSAGE_ASSERT( "test", 0 );
   STLSOFT_ASSERT( 0 );

   std::cerr << "\tAfter STLSOFT_MESSAGE_ASSERT( \"test\", 0 )" << std::endl;

   return 0; // keep vc6 happy
}

* Results:

- GCC 3.4.2:
        Before STLSOFT_MESSAGE_ASSERT( "test", 0 )
Assertion failed: ("test" && 0), file bug_vc6-8-stlsoft_message_assert.cpp, line 8

- VC6, VC8:
        Before STLSOFT_MESSAGE_ASSERT( "test", 0 )
        After STLSOFT_MESSAGE_ASSERT( "test", 0 )

___