Rémi Bernon (@rbernon) commented about tools/widl/client.c:
const struct uuid *uuid = get_attrp(iface->attrs, ATTR_UUID); const str_list_t *endpoints = get_attrp(iface->attrs, ATTR_ENDPOINT);
- if (!uuid)
error_at( &iface->where, "cannot write client interface, no uuid found for interface %s.\n", iface->name );
I think it'd be better to do that in parser.y `check_functions`. You'd there check that either the `[local]` or `[uuid]` attributes are set, because local interfaces are apparently allowed to not have one.