Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/dxil.c:
+ + case ABBREV_CHAR: + abbrev->operands[i].read_operand = shader_sm6_read_char6_operand; + break; + + case ABBREV_BLOB: + if (prev_type == ABBREV_ARRAY) + { + FIXME("Unexpected blob abbreviation after array.\n"); + return false; + } + abbrev->operands[i].read_operand = shader_sm6_read_blob_operand; + break; + } + + count -= (prev_type == ABBREV_ARRAY); Instead of this, couldn't you add `count--` to the `case ABBREV_ARRAY` block? It feels easier to understand to me.
-- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/44#note_12964