Alexandre Julliard (@julliard) commented about tools/widl/header.c:
} LIST_FOR_EACH_ENTRY( v, fields, var_t, entry ) {
expr_t *contract = get_attrp(v->attrs, ATTR_CONTRACT);
expr_t *contract; if (!v || !v->declspec.type) continue;
contract = get_attrp(v->attrs, ATTR_CONTRACT); if (contract) write_apicontract_guard_start(h, contract);
A list entry can never be NULL.