Zebediah Figura (@zfigura) commented about libs/vkd3d-shader/hlsl_codegen.c:
+ load = hlsl_ir_resource_load(instr); + var = load->resource.var; + regset = hlsl_type_get_regset(hlsl_deref_get_type(ctx, &load->resource)); + + if (regset == HLSL_REGSET_SAMPLERS) + { + assert(!load->sampler.var); + + if (!hlsl_regset_index_from_deref(ctx, &load->resource, regset, &index)) + { + hlsl_error(ctx, &instr->loc, VKD3D_SHADER_ERROR_HLSL_NONCONSTANT_INDEX, + "Non-constant index in sampler resource load."); + return false; + } + var->objects_usage[regset][index].used = true; + return true; I'm somewhat inclined to say we should always return false if we aren't actually using the return value.
-- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/159#note_29999