Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/hlsl.y:
{hlsl_fixme(ctx, &loc, "Unroll attribute with iteration count.");return NULL;}}else{if (!strcmp(attr->name, "loop")|| !strcmp(attr->name, "fastopt")|| !strcmp(attr->name, "allow_uav_condition")){hlsl_fixme(ctx, &loc, "Unhandled attribute %s.", attr->name);return NULL;}}- }
Ignoring invalid attributes doesn't seem the right thing to do. The native compiler fails on invalid attributes, from my tests. Also, why are you triggering a `fixme` on `unroll(X)` and not on plain `unroll`?