The reason these fail on MVK is because we check the device capabilities before we check the basic validity of the root signature. We should probably do that at the end of d3d12_root_signature_info_from_desc() instead of inside d3d12_root_signature_info_count_descriptors().
Right, though I had to move the check even further than that, after ranges are checked for overlapping. [This is what I could come up quickly with](https://gitlab.winehq.org/giomasce/vkd3d/-/commit/158ae1593030f2741227acb0f0...), but it is broken because it crashes other tests. Unfortunately resource mapping is still partially uncharted territory for me, so I'll leave this for when I have more time.