From 1f24f5caa1c5370b942938d714cf203f5564de7c Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Wed, 6 Jan 2021 18:04:04 -0800 Subject: Ensure the endian test is constexpr --- common/endiantest.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/common/endiantest.h b/common/endiantest.h index 0a20eb91..893653bd 100644 --- a/common/endiantest.h +++ b/common/endiantest.h @@ -4,11 +4,12 @@ #if defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__) #define IS_LITTLE_ENDIAN (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) #else -static const union { - unsigned int u; - unsigned char b[sizeof(unsigned int)]; -} EndianTest = { 1 }; -#define IS_LITTLE_ENDIAN (EndianTest.b[0] == 1) +constexpr inline bool EndianTest() noexcept +{ + constexpr int test_val{1}; + return static_cast(test_val); +} +#define IS_LITTLE_ENDIAN (EndianTest()) #endif #endif /* AL_ENDIANTEST_H */ -- cgit v1.2.3