
Here is the full output from my program: $ ./decision.test.suite terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_S_construct NULL not valid Aborted (core dumped) Now, all the code in this program is focussed on number crunching, so none of it involves strings. I am guessing that I missed something in setting up a test suite. After including the headers for the function objects being tested (some of which are template classes) as well as headers for several boost libraries, I have the following: #define BOOST_TEST_MAIN decision_tests #include <boost/test/unit_test.hpp> #include <boost/test/floating_point_comparison.hpp> BOOST_AUTO_TEST_SUITE( test_decisions ) BOOST_AUTO_TEST_CASE( test_dist_moments ) { And I have a series of test cases that start the same way. After setting up the required data for each test, I use something like: BOOST_CHECK_CLOSE( Sm, 0.00000000000, 0.0001 ); or something like: BOOST_CHECK(ibll(x1,i) == true); Of course each test case ends with a closing '}' and the whole program ends with: BOOST_AUTO_TEST_SUITE_END() Now, I know I can write a suite of unit tests without using Boost::Test, but I was hoping I'd just missed something obvious. I don't even know where to look for the cause of this exception since none of the code I actually wrote that is involved in these tests makes any use at all of any strings. My guess is that I must have missed some macro required by the unit test framework that is required in order to ensure whatever string object is involved in this exception doesn't get a NULL value. Or maybe I missed a header. I really have no idea where to look for the cause of this problem. Any guidance on what to look for or what I may have missed, would be greatly appreciated. Cheers Ted