#include #include #include #include #define ARRAY (3, (a, b, c)) #define EMPTY_ARRAY (0, ()) int main() { std::cout << BOOST_PP_STRINGIZE(BOOST_PP_ARRAY_PUSH_BACK(ARRAY, d)) << std::endl; // expands to (4, (a, b, c, d)) std::cout << BOOST_PP_STRINGIZE(BOOST_PP_ARRAY_PUSH_BACK(EMPTY_ARRAY, d)) << std::endl; // expands to (4, (a, b, c, d)) }