-fms-compatibility results in compile errors when including <emmintrin.h> #13108
Labels
bugzilla
Issues migrated from bugzilla
clang:headers
Headers provided by Clang, e.g. for intrinsics
worksforme
Resolved as "works for me"
Extended Description
Test which demonstrates this, using clang version 3.2 (trunk 156145)
cat > test-emmintrin.c << EOF
#include <emmintrin.h>
EOF
clang -c test-emmintrin.c -fms-compatibility -msse2
... results in errors like this:
/opt/clang-3.2svn/bin/../lib/clang/3.2/include/emmintrin.h:134:20: error:
invalid conversion between vector type '__v4si' and scalar type '__m128d'
(aka 'double')
return (__m128d)((__v4si)a & (__v4si)b);
^~~~~~~~~
From <emmintrin.h>:
It looks like newer versions of Clang ignore gcc-style vector attributes when using the -fms-compatibility flag. This very well might be the intended behavior - but it seems like such a simple test case shouldn't fail to compile.
This behavior doesn't occur with clang version 3.1 (trunk 145140).
The text was updated successfully, but these errors were encountered: