File gcc-make-xmmintrin-header-cplusplus-compatible.patch of Package mingw64-gcc
--- a/gcc/config/i386/xmmintrin.h 2015-01-05 13:33:28.000000000 +0100
+++ b/gcc/config/i386/xmmintrin.h 2015-04-23 21:31:22.155138087 +0200
@@ -64,6 +64,10 @@
#define __DISABLE_SSE__
#endif /* __SSE__ */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* The Intel API is flexible enough that we must allow aliasing with other
vector types, and their scalar components. */
typedef float __m128 __attribute__ ((__vector_size__ (16), __may_alias__));
@@ -1245,6 +1249,10 @@
(row3) = __builtin_ia32_movhlps (__t3, __t2); \
} while (0)
+#ifdef __cplusplus
+}
+#endif
+
/* For backward source compatibility. */
# include <emmintrin.h>