#include <boost/preprocessor/comparison/greater.hpp> #include <boost/preprocessor/list/filter.hpp> #define LIST (1, (2, (3, (4, (5, BOOST_PP_NIL))))) #define PRED(d, _, num) BOOST_PP_GREATER_D(d, num, 2) BOOST_PP_LIST_FILTER(PRED, nil, LIST) // expands to (3, (4, (5, BOOST_PP_NIL)))