#include #include namespace detail { struct bullshit {}; } template void write(U value) { static_assert(!std::is_same::value, "This is bullshit!"); std::cout << (T)value << std::endl; } int main() { write(3ull); }