Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/dxil.c:
+ for (i = 0; i < block->record_count; ++i) + { + record = block->records[i]; + + type = &sm6->types[sm6->type_count]; + type_index = sm6->type_count; + + switch (record->code) + { + case TYPE_CODE_ARRAY: + case TYPE_CODE_VECTOR: + if (record->operand_count < 2) + { + WARN("Missing operands for array/vector type %u.\n", type_index); + return VKD3D_ERROR_INVALID_SHADER; + } Shouldn't we also `WARN()` if there are too many operands? Here and for all other type classes.
-- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/259#note_37320