tsimd
tsimd copied to clipboard
Rewritten candidates of operator==
I'd like to add tsimd to my own test set, but there are some C++20 incompatibilities, caused by the introduction of operator<=>.
Eg:
error: simple_example.cpp:131:18 result type of operator== in rewritten candidate must be type bool auto b1 = v1 != v2; ^
gcc and clang give similar errors with -std=c++20.
The issue is covered in over.match.oper/3.4. The return type of the rewritten candidates is bool, which obviously doesn't work with vectorization. I think vector versions of all the comparison operators have to be provided to avoid this.