From b0e55baf64eba25ede586abae35516b4af34f3a7 Mon Sep 17 00:00:00 2001 From: T3hD0gg <150945521+t3hd0gg@users.noreply.github.com> Date: Tue, 21 Oct 2025 18:17:29 -0400 Subject: [PATCH] Ensure swizzle compatibility with GLM_FORCE_SIZE_T_LENGTH Replace `int N` with `length_t N` for the base swizzle templates to ensure compatibility with `GLM_FORCE_SIZE_T_LENGTH`. --- glm/detail/_swizzle.hpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/glm/detail/_swizzle.hpp b/glm/detail/_swizzle.hpp index 0678982c0..f7d59841c 100644 --- a/glm/detail/_swizzle.hpp +++ b/glm/detail/_swizzle.hpp @@ -17,12 +17,12 @@ namespace detail char _buffer[1]; }; - template + template struct _swizzle_base1 : public _swizzle_base0 { }; - template + template struct _swizzle_base1 : public _swizzle_base0 { }; @@ -56,7 +56,7 @@ namespace detail DUPLICATE_ELEMENTS = 1 if there is a repeated element, 0 otherwise (used to specialize swizzles containing duplicate elements so that they cannot be used as r-values). */ - template + template struct _swizzle_base2 : public _swizzle_base1::value> { struct op_equal @@ -145,7 +145,7 @@ namespace detail }; // Specialization for swizzles containing duplicate elements. These cannot be modified. - template + template struct _swizzle_base2 : public _swizzle_base1::value> { struct Stub {}; @@ -159,7 +159,7 @@ namespace detail } }; - template + template struct _swizzle : public _swizzle_base2 { typedef _swizzle_base2 base_type; @@ -172,8 +172,8 @@ namespace detail // // To prevent the C++ syntax from getting entirely overwhelming, define some alias macros // -#define GLM_SWIZZLE_TEMPLATE1 template -#define GLM_SWIZZLE_TEMPLATE2 template +#define GLM_SWIZZLE_TEMPLATE1 template +#define GLM_SWIZZLE_TEMPLATE2 template #define GLM_SWIZZLE_TYPE1 _swizzle #define GLM_SWIZZLE_TYPE2 _swizzle