Zebediah Figura (@zfigura) commented about libs/vkd3d-shader/hlsl.y:
+static bool hlsl_validate_technique_token(struct hlsl_ctx *ctx, const char *token) +{ + if (ctx->profile->type != VKD3D_SHADER_TYPE_EFFECT) + return true; + + switch (ctx->profile->major_version) + { + case 2: + return !strcmp(token, "technique"); + case 4: + return !strcmp(token, "technique10"); + case 5: + return !strcmp(token, "technique11"); + default: + vkd3d_unreachable(); + } This doesn't match my testing at all. fx_2_0 doesn't allow technique10 or technique11, but it doesn't care about case, and fx_4_0 and fx_5_0 accept anything. Where are you seeing this?
-- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/111#note_25659