diff --git a/glm/detail/func_integer.inl b/glm/detail/func_integer.inl index accc58d9..47be412a 100644 --- a/glm/detail/func_integer.inl +++ b/glm/detail/func_integer.inl @@ -317,7 +317,7 @@ namespace detail template class vecType> GLM_FUNC_QUALIFIER vecType bitCount(vecType const & v) { - #ifdef GLM_COMPILER_VC + #if GLM_COMPILER & GLM_COMPILER_VC #pragma warning(push) #pragma warning(disable : 4310) //cast truncates constant value #endif @@ -329,7 +329,7 @@ namespace detail x = detail::compute_bitfieldBitCountStep::type, P, vecType, detail::is_aligned

::value, sizeof(T) * 8>= 32>::call(x, typename detail::make_unsigned::type(0x0000FFFF0000FFFFull), typename detail::make_unsigned::type(16)); x = detail::compute_bitfieldBitCountStep::type, P, vecType, detail::is_aligned

::value, sizeof(T) * 8>= 64>::call(x, typename detail::make_unsigned::type(0x00000000FFFFFFFFull), typename detail::make_unsigned::type(32)); return vecType(x); - #ifdef GLM_COMPILER_VC + #if GLM_COMPILER & GLM_COMPILER_VC #pragma warning(pop) #endif } diff --git a/glm/detail/type_vec.hpp b/glm/detail/type_vec.hpp index 686a9b50..9d066550 100644 --- a/glm/detail/type_vec.hpp +++ b/glm/detail/type_vec.hpp @@ -9,7 +9,7 @@ namespace glm{ namespace detail { -#ifdef GLM_COMPILER_VC +#if GLM_COMPILER & GLM_COMPILER_VC #pragma warning(push) #pragma warning(disable : 4324) // structure was padded due to alignment specifier #endif @@ -21,9 +21,10 @@ namespace detail template<> GLM_ALIGNED_STRUCT(16) aligned<16>{}; template<> GLM_ALIGNED_STRUCT(32) aligned<32>{}; template<> GLM_ALIGNED_STRUCT(64) aligned<64>{}; -#ifdef GLM_COMPILER_VC +#if GLM_COMPILER & GLM_COMPILER_VC #pragma warning(pop) #endif + template struct storage {