Fixed unknown-pragmas warnings on non-MSVC. (#69)

Changes:
Surrounded the MSVC-specific "disable warning" pragmas with MSVC
guards.
This commit is contained in:
Michael Puskas
2020-11-07 03:05:36 -07:00
committed by GitHub
parent d787680819
commit ee7bb2cb93

View File

@@ -146,12 +146,16 @@ namespace bitsery {
*/ */
// add test data in separate struct, because some compilers only support constexpr functions with return-only body // add test data in separate struct, because some compilers only support constexpr functions with return-only body
// suppress msvc warnings. // suppress msvc warnings.
#ifdef _MSC_VER
#pragma warning( disable : 4310 ) #pragma warning( disable : 4310 )
#endif
struct EndiannessTestData { struct EndiannessTestData {
static constexpr uint32_t _sample4Bytes = 0x01020304; static constexpr uint32_t _sample4Bytes = 0x01020304;
static constexpr uint8_t _sample1stByte = (const uint8_t &) _sample4Bytes; static constexpr uint8_t _sample1stByte = (const uint8_t &) _sample4Bytes;
}; };
#ifdef _MSC_VER
#pragma warning( default : 4310 ) #pragma warning( default : 4310 )
#endif
constexpr EndiannessType getSystemEndianness() { constexpr EndiannessType getSystemEndianness() {
static_assert(EndiannessTestData::_sample1stByte == 0x04 || EndiannessTestData::_sample1stByte == 0x01, static_assert(EndiannessTestData::_sample1stByte == 0x04 || EndiannessTestData::_sample1stByte == 0x01,