Francisco Casas (@fcasas) commented about libs/vkd3d-shader/hlsl.y:
if (!(modifiers & HLSL_STORAGE_STATIC)) var->storage_modifiers |= HLSL_STORAGE_UNIFORM;
if (ctx->profile->major_version < 5 && (var->storage_modifiers & HLSL_STORAGE_UNIFORM) &&
type_has_object_components(var->data_type, true))
if (ctx->profile->major_version < 5 && (var->storage_modifiers & HLSL_STORAGE_UNIFORM)
&& var->data_type->class == HLSL_CLASS_STRUCT && type_has_object_components(var->data_type))
I think we would lose coverage for when we have an array of structs with object components.