Function Subspace :: _i64 literal

auto operator""_i64(unsigned long long val) -> i64

For writing i64 literals.

Un-qualified integer literals are 32 bits large (the size of int), unless a literal suffix modifies them, such as with _i64 which creates a 64-bit value. On Windows, this is the same as the l suffix (which makes a long) but is platform agnostic, and forces a safe numeric type instead of a primitive value when this is needed (such as for templates or member function access).

Values out of range for i64 will fail to compile.


auto i = 123_i64 - (5_i64).abs();
sus_check(i == 118_i64);