Is SIMD template

Walter Bright newshound2 at digitalmars.com
Mon Jan 23 11:31:45 PST 2012


On 1/23/2012 10:58 AM, Manu wrote:
> So I've been fiddling, but I can't work it out.
> Trying to make something like isStaticArray to match a vector...
>
> template isVector(T : __vector(U[N]), U, size_t N) { enum bool isVector = true; }
> template isVector(T) { enum bool isVector = false; }
>
> Complains:
> test.d:122: Error: Integer constant expression expected instead of N
> test.d:122: Error: size of type U is not known
> test.d:122: Error: base type of __vector must be a 16 byte static array, not U[N]
>
> A size_t template arg should be an integer constant expression, and
> consequently, the size of U should be known... Bug?

Code would have to be added to the compiler to make that work. In the meantime, 
you can simply enumerate the supported aliases for vector types.


More information about the Digitalmars-d mailing list