Zebediah Figura (@zfigura) commented about libs/vkd3d-shader/hlsl.y:
- {
if (strlen(swizzle) != 1)
hlsl_error(ctx, loc, VKD3D_SHADER_ERROR_HLSL_INVALID_RESERVATION,
"Invalid packoffset() swizzle \"%s\".", swizzle);
if (swizzle[0] == 'x' || swizzle[0] == 'r')
reservation.index += 0;
else if (swizzle[0] == 'y' || swizzle[0] == 'g')
reservation.index += 1;
else if (swizzle[0] == 'z' || swizzle[0] == 'b')
reservation.index += 2;
else if (swizzle[0] == 'w' || swizzle[0] == 'a')
reservation.index += 3;
else
hlsl_error(ctx, loc, VKD3D_SHADER_ERROR_HLSL_INVALID_RESERVATION,
"Invalid packoffset() swizzle \"%s\".", swizzle);
Here too I'd say "component" rather than "swizzle".