Мы можем использовать препроцессор знать, если unsigned long long
определяется:Как знать, если __uint128_t определяется
#include <limits.h>
#ifndef ULLONG_MAX
typedef unsigned long t_mask;
#else
typedef unsigned long long t_mask;
#endif
Но как знать, если __uint128_t определяется?
Clang знает об этом, чтобы поддержать код GCC, так что я склоняюсь к решению Спарки – user2913094