Rémi Bernon (@rbernon) commented about tools/widl/header.c:
} }
+static void write_header_stmts( FILE *header, const statement_list_t *stmts, const type_t *iface, int ignore_funcs ); + +static void write_header_com_interface( FILE *header, type_t *iface, const type_t *ref_iface ) +{ + type_t *inherit_from; + + if (iface->written) return; + + /* ensure declaration of inherited interface exists before ours (C++ requires this) */ + inherit_from = type_iface_get_inherit( iface ); + if (inherit_from && !inherit_from->ignore && type_iface_get_inherit( inherit_from ) /* skip IUnknown */) Why should we skip interfaces without base?
```suggestion:-0+0 if (inherit_from && !inherit_from->ignore) ``` -- https://gitlab.winehq.org/wine/wine/-/merge_requests/8500#note_108808