Selaa lähdekoodia

fix: function-local static arrays unsupported in cuda device code

tszirr 12 vuotta sitten
vanhempi
sitoutus
b016594ac3
1 muutettua tiedostoa jossa 12 lisäystä ja 3 poistoa
  1. 12 3
      glm/core/_swizzle.hpp

+ 12 - 3
glm/core/_swizzle.hpp

@@ -160,12 +160,18 @@ namespace detail
 
 		GLM_FUNC_QUALIFIER value_type& operator[]  (size_t i)
 		{
-			static const int offset_dst[4] = { E0, E1, E2, E3 };
+#ifndef __CUDA_ARCH__
+			static
+#endif
+				const int offset_dst[4] = { E0, E1, E2, E3 };
 			return this->elem(offset_dst[i]);
 		}
 		GLM_FUNC_QUALIFIER value_type  operator[]  (size_t i) const
 		{
-			static const int offset_dst[4] = { E0, E1, E2, E3 };
+#ifndef __CUDA_ARCH__
+			static
+#endif
+				const int offset_dst[4] = { E0, E1, E2, E3 };
 			return this->elem(offset_dst[i]);
 		}
 	protected:
@@ -195,7 +201,10 @@ namespace detail
 
 		GLM_FUNC_QUALIFIER value_type  operator[]  (size_t i) const
 		{
-			static const int offset_dst[4] = { E0, E1, E2, E3 };
+#ifndef __CUDA_ARCH__
+			static
+#endif
+				const int offset_dst[4] = { E0, E1, E2, E3 };
 			return this->elem(offset_dst[i]);
 		}
 	};