input_line_6:2:2: error: function definition is not allowed here BOOST_AUTO_TEST_CASE( my_test ) { ^ /opt/local/include/boost/test/unit_test_suite.hpp:199:9: note: expanded from macro 'BOOST_AUTO_TEST_CASE' BOOST_AUTO_TEST_CASE_NO_DECOR, \ ^ /opt/local/include/boost/test/detail/pp_variadic.hpp:38:13: note: expanded from macro 'BOOST_TEST_INVOKE_IF_N_ARGS' F1, \ ^ /opt/local/include/boost/preprocessor/control/iif.hpp:18:57: note: expanded from macro 'BOOST_PP_IIF' # define BOOST_PP_IIF(bit, t, f) BOOST_PP_IIF_I(bit, t, f) ^ note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /opt/local/include/boost/test/unit_test_suite.hpp:186:5: note: expanded from macro 'BOOST_AUTO_TEST_CASE_NO_DECOR' BOOST_FIXTURE_TEST_CASE_NO_DECOR( test_name, \ ^ /opt/local/include/boost/test/unit_test_suite.hpp:158:73: note: expanded from macro 'BOOST_FIXTURE_TEST_CASE_NO_DECOR' #define BOOST_FIXTURE_TEST_CASE_NO_DECOR( test_name, F ) \ ^ /opt/local/include/boost/test/unit_test_suite.hpp:138:73: note: expanded from macro '\ BOOST_FIXTURE_TEST_CASE_WITH_DECOR' static void BOOST_AUTO_TC_INVOKER( test_name )() \ ^ input_line_6:2:2: error: use of undeclared identifier 'my_test_invoker' /opt/local/include/boost/test/unit_test_suite.hpp:199:9: note: expanded from macro 'BOOST_AUTO_TEST_CASE' BOOST_AUTO_TEST_CASE_NO_DECOR, \ ^ /opt/local/include/boost/test/detail/pp_variadic.hpp:38:13: note: expanded from macro 'BOOST_TEST_INVOKE_IF_N_ARGS' F1, \ ^ /opt/local/include/boost/preprocessor/control/iif.hpp:18:57: note: expanded from macro 'BOOST_PP_IIF' # define BOOST_PP_IIF(bit, t, f) BOOST_PP_IIF_I(bit, t, f) ^ note: (skipping 8 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) /opt/local/include/boost/config/suffix.hpp:545:31: note: expanded from macro 'BOOST_DO_JOIN' #define BOOST_DO_JOIN( X, Y ) BOOST_DO_JOIN2(X,Y) ^ /opt/local/include/boost/config/suffix.hpp:546:32: note: expanded from macro 'BOOST_DO_JOIN2' #define BOOST_DO_JOIN2( X, Y ) X##Y ^ :85:1: note: expanded from here my_test_invoker ^ input_line_6:2:34: error: function definition is not allowed here BOOST_AUTO_TEST_CASE( my_test ) { ^