@ -54,6 +54,14 @@
# pragma message("GLM: GLM_GTX_simd_vec4 extension included")
# pragma message("GLM: GLM_GTX_simd_vec4 extension included")
# endif
# endif
// Warning silencer for nameless struct/union.
# if (GLM_COMPILER & GLM_COMPILER_VC)
# pragma warning(push)
# pragma warning(disable:4201) // warning C4201: nonstandard extension used : nameless struct/union
# endif
namespace glm {
namespace glm {
namespace detail
namespace detail
{
{
@ -69,7 +77,15 @@ namespace detail
typedef fvec4SIMD type ;
typedef fvec4SIMD type ;
typedef tvec4 < bool > bool_type ;
typedef tvec4 < bool > bool_type ;
# ifdef GLM_SIMD_ENABLE_XYZW_UNION
union
{
__m128 Data ;
__m128 Data ;
struct { float x , y , z , w ; } ;
} ;
# else
__m128 Data ;
# endif
//////////////////////////////////////
//////////////////////////////////////
// Implicit basic constructors
// Implicit basic constructors
@ -490,6 +506,12 @@ namespace detail
# include "simd_vec4.inl"
# include "simd_vec4.inl"
# if (GLM_COMPILER & GLM_COMPILER_VC)
# pragma warning(pop)
# endif
# endif //(GLM_ARCH != GLM_ARCH_PURE)
# endif //(GLM_ARCH != GLM_ARCH_PURE)
# endif //GLM_GTX_simd_vec4
# endif //GLM_GTX_simd_vec4