#include template struct Pack { static constexpr std::size_t size = sizeof...(Ts); }; int main() { static_assert( Count_Unique<>::value == 0 ); static_assert( Count_Unique::value == 1 ); static_assert( Count_Unique::value == 3 ); static_assert( Count_Unique::value == 2 ); static_assert( Count_Unique::value == 2 ); }