#include #include struct Base { ~Base() = default; }; template void segment_split(T, T) {} int main() { boost::base_collection c; boost::poly_collection::all_of(c.begin(), c.end(), [](auto& x) { return true; }); }