https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497
--- Comment #14 from Jonathan Wakely <redi at gcc dot gnu.org> --- I assume clang doesn't have __is_arithmetic, __is_scalar and __is_void built-ins yet, because <bits/cpp_type_traits.h> also defines class templates with those names. At least __are_same, __is_integer and __is_floating don't clash.