Skip to content

tests fail on powerpc64 with clang: xsimd_vsx_register.hpp:67:61: error: cannot use 'long' with '__vector bool' and other errors #1257

@drew-parsons

Description

@drew-parsons

powerpc64 tests of xsimd 14.0.0 on debian (ppc64el) are passing with gcc 15 but failing with clang 21.

A full test log can be seen at https://ci.debian.net/data/autopkgtest/unstable/ppc64el/x/xsimd/68549628/log.gz

2007s [  5%] Building CXX object CMakeFiles/test_xsimd.dir/test_api.cpp.o
2007s /usr/bin/clang++ -DXSIMD_ENABLE_XTL_COMPLEX=1  -Wunused-parameter -Wextra -Wreorder -Wshorten-64-to-32 -std=c++17 -g -fPIC -mcpu=native -mtune=native -O3 -DNDEBUG -MD -MT CMakeFiles/test_xsimd.dir/test_api.cpp.o -MF CMakeFiles/test_xsimd.dir/test_api.cpp.o.d -o CMakeFiles/test_xsimd.dir/test_api.cpp.o -c /tmp/autopkgtest-lxc.egz8qg2i/downtmp/build.Yvf/src/test/test_api.cpp
2010s In file included from /tmp/autopkgtest-lxc.egz8qg2i/downtmp/build.Yvf/src/test/test_api.cpp:12:
2010s In file included from /usr/include/xsimd/xsimd.hpp:63:
2010s In file included from /usr/include/xsimd/memory/xsimd_aligned_allocator.hpp:27:
2010s In file included from /usr/include/xsimd/memory/../config/xsimd_arch.hpp:19:
2010s In file included from /usr/include/xsimd/memory/../config/../types/xsimd_all_registers.hpp:51:
2010s /usr/include/xsimd/memory/../config/../types/xsimd_vsx_register.hpp:67:61: error: cannot use 'long' with '__vector bool'
2010s    67 |         XSIMD_DECLARE_SIMD_BOOL_VSX_REGISTER(unsigned long, long);
2010s       |                                                             ^
2010s /usr/include/xsimd/memory/../config/../types/xsimd_vsx_register.hpp:68:52: error: cannot use 'long' with '__vector bool'
2010s    68 |         XSIMD_DECLARE_SIMD_BOOL_VSX_REGISTER(long, long);
2010s       |                                                    ^
2010s /usr/include/xsimd/memory/../config/../types/xsimd_vsx_register.hpp:70:54: error: cannot use 'long' with '__vector bool'
2010s    70 |         XSIMD_DECLARE_SIMD_BOOL_VSX_REGISTER(double, long);
2010s       |                                                      ^
...
1988s 19 errors generated.
1988s make[2]: *** [CMakeFiles/test_xsimd.dir/build.make:93: CMakeFiles/test_xsimd.dir/test_api.cpp.o] Error 1

If it's working fine with gcc, does that mean there might be clang option that could fix the issue. Or should it be considered a bug in clang?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions