libc++'s type_traits header doesn't properly support __int128 and __uint128 integers as type parameter values for is_integral, is_signed, is_unsigned, make_signed and make_unsigned. Is this by design, or would a patch be welcome? - Stephan