Open
Description
error.cpp:
#define SIMDPP_ARCH_X86_SSE2
#include "simdpp/simd.h"
Compiling with
$ clang++ -std=c++17 -c -I libsimdpp error.cpp
produces the following error:
In file included from error.cpp:3:
In file included from libsimdpp/simdpp/simd.h:19:
In file included from libsimdpp/simdpp/core/align.h:15:
In file included from libsimdpp/simdpp/types.h:44:
libsimdpp/simdpp/types/empty_expr.h:220:52: error: no viable conversion from returned value
of type 'const mask_int32<4U>' to function return type 'uint32<4U>'
SIMDPP_INL operator uint32<N>() const { return e; }
^
libsimdpp/simdpp/detail/insn/cmp_neq.h:195:21: note: in instantiation of member function
'simdpp::arch_sse2::mask_int32<4, simdpp::arch_sse2::expr_empty>::operator uint32'
requested here
r32 = (uint32x4)cmp_eq(uint32x4(a), uint32x4(b));
^
libsimdpp/simdpp/types/int32x4.h:123:16: note: candidate constructor not viable: no known
conversion from 'const mask_int32<4U>' to 'const uint32<4> &' for 1st argument
SIMDPP_INL uint32<4>(const uint32<4> &) = default;
^
libsimdpp/simdpp/types/int32x4.h:138:16: note: candidate constructor not viable: no known
conversion from 'const mask_int32<4U>' to 'const simdpp::arch_sse2::uint32<4,
void>::native_type &' (aka 'const __m128i &') for 1st argument
SIMDPP_INL uint32<4>(const native_type& d) : d_(d) {}
^
libsimdpp/simdpp/types/int32x4.h:126:34: note: candidate template ignored: could not match
'uint32' against 'mask_int32'
template<class E> SIMDPP_INL uint32<4>(const uint32<4,E>& d) { *this = d.eval(); }
^
libsimdpp/simdpp/types/int32x4.h:127:34: note: candidate template ignored: could not match
'int32' against 'mask_int32'
template<class E> SIMDPP_INL uint32<4>(const int32<4,E>& d) { *this = d.eval(); }
^
libsimdpp/simdpp/types/int32x4.h:148:34: note: candidate template ignored: could not match
'expr_vec_construct' against 'mask_int32'
template<class E> SIMDPP_INL uint32<4>(const expr_vec_construct<E>& e)
^
libsimdpp/simdpp/types/int32x4.h:221:16: note: candidate function
SIMDPP_INL operator native_type() const SIMDPP_IMPLICIT_CONVERSION_DEPRECATION_MSG
^
1 error generated.
The compiler version is Apple LLVM version 10.0.1 (clang-1001.0.46.4)
Compiling with c++11 or c++14 work ok.
Metadata
Assignees
Labels
No labels
Activity