diff --git a/src/openrct2/localisation/Formatter.h b/src/openrct2/localisation/Formatter.h index 39a968603f..7151fdbf94 100644 --- a/src/openrct2/localisation/Formatter.h +++ b/src/openrct2/localisation/Formatter.h @@ -72,8 +72,8 @@ public: template Formatter& Add(TDeduced value) { - static_assert(sizeof(TSpecified) <= sizeof(uintptr_t), "Type too large"); - static_assert(sizeof(TDeduced) <= sizeof(uintptr_t), "Type too large"); + static_assert(sizeof(TSpecified) <= sizeof(uint64_t), "Type too large"); + static_assert(sizeof(TDeduced) <= sizeof(uint64_t), "Type too large"); // clang-format off static_assert( @@ -91,14 +91,14 @@ public: ); // clang-format on - uintptr_t convertedValue; + uint64_t convertedValue; if constexpr (std::is_integral_v) { - convertedValue = static_cast(value); + convertedValue = static_cast(value); } else { - convertedValue = reinterpret_cast(value); + convertedValue = reinterpret_cast(value); } std::memcpy(CurrentBuf, &convertedValue, sizeof(TSpecified)); Increment(sizeof(TSpecified));