This is required by https://bugs.winehq.org/show_bug.cgi?id=54660 .
-- v7: vkd3d-shader/hlsl: Consider duplicated input semantic types equivalent in SM1. vkd3d-shader/hlsl: Handle possibly different types in input semantic var load. vkd3d-shader/hlsl: Error out when a semantic is used with incompatible types. vkd3d-shader/hlsl: Error out when an output semantic is used more than once. vkd3d-shader/hlsl: Support semantics for array types. vkd3d-shader/hlsl: Don't create semantic vars more than once. vkd3d-shader/hlsl: Move get_array_size() and get_array_type() to hlsl.c. tests: Test duplicated semantics. tests: Test array types with semantics. vkd3d-shader/hlsl: Avoid invalid input/output copies for non-numeric types. tests: Map unindentified hrs on compilation.