
I have been using a source template for unit test with boost.test, which used to be working well until I started to use VC2012 RC. Here's a minimal repo: #include <boost/test/unit_test.hpp> using namespace boost::unit_test::framework; using namespace boost::unit_test; test_suite* init_unit_test_suite(int argc, char *argv[]) { BOOST_TEST_MESSAGE("hello test."); return 0; } With the same build options: cl.exe /EHsc /MT main.cpp VC2010 compiles fine. VC2012 outputs: LINK : fatal error LNK1561: entry point must be defined. Added BOOST_TEST_MAIN caused errors for both compilers. error C2084: function 'boost::unit_test::test_suite *init_unit_test_suite(int,char *[])' already has a body I tested on both 1.49 and 1.50. And the results are the same. I suspect there is a bug of version check against MSVC but could not locate it.