[LoopSIMD] Fix SFINAE of converting constructor
This merge request changes the SFINAE of the converting constructor of LoopSIMD.
Before it was checked for std::is_same<I, Simd::Scalar<I>>::value
To make sure the constructor argument is indeed a scalar (in the Simd sense).
Now we just accept the scalar type of the LoopSIMD
as the argument, any conversion now happens when calling the constructor, and possibility of conversion can reliably be checked with std::is_convertible
.
Edited by Jö Fahlke