summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/glm/test/bug/bug_ms_vec_static.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/glm/test/bug/bug_ms_vec_static.cpp')
-rw-r--r--3rdparty/glm/test/bug/bug_ms_vec_static.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/3rdparty/glm/test/bug/bug_ms_vec_static.cpp b/3rdparty/glm/test/bug/bug_ms_vec_static.cpp
new file mode 100644
index 00000000000..8bc2fadc225
--- /dev/null
+++ b/3rdparty/glm/test/bug/bug_ms_vec_static.cpp
@@ -0,0 +1,31 @@
+#include <glm/glm.hpp>
+
+#if GLM_HAS_ALIGNED_TYPE
+struct vec2;
+
+struct _swizzle
+{
+ char _buffer[1];
+};
+
+struct vec2
+{
+ GLM_CONSTEXPR_CTOR vec2() :
+ x(0), y(0)
+ {}
+
+ union
+ {
+ struct { float x, y; };
+ struct { _swizzle xx; };
+ };
+};
+#endif
+
+// Visual C++ has a bug generating the error: fatal error C1001: An internal error has occurred in the compiler.
+// vec2 Bar;
+
+int main()
+{
+ return 0;
+}