Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/dxil.c:
+static enum vkd3d_result sm6_parser_entry_point_init(struct sm6_parser *sm6) +{ + const struct sm6_metadata_value *m = sm6_parser_find_named_metadata(sm6, "dx.entryPoints"); + const struct sm6_metadata_node *entry_node = m ? m->u.node : NULL; + const struct sm6_value *value; + + if (!entry_node || !entry_node->operand_count) + { + WARN("No entry point definition found.\n"); + vkd3d_shader_parser_error(&sm6->p, VKD3D_SHADER_ERROR_DXIL_INVALID_ENTRY_POINT, + "No entry point definition found in the metadata."); + return VKD3D_ERROR_INVALID_SHADER; + } + + if (!(m = entry_node->operands[0])) + return VKD3D_OK; Why is it appropriate to return `VKD3D_OK` here? Neither the entry point nor the signatures are set.
-- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/372#note_47543