This works, but only because sizeof(*signature->elements) is smaller than sizeof(*src->elements).
I changed it to `vkd3d_calloc()`, but I see no size mismatch here.
I think we could return a pointer to the element itself here, instead of the index.
The index is used to address `dcl_params`, and it's stored in a register as an index.