Jacek Caban (@jacek) commented about dlls/mshtml/xmlhttprequest.c:
IHTMLXMLHttpRequest2 IHTMLXMLHttpRequest2_iface; IWineXMLHttpRequestPrivate IWineXMLHttpRequestPrivate_iface; IProvideClassInfo2 IProvideClassInfo2_iface;
- IHTMLXDomainRequest IHTMLXDomainRequest_iface; /* only for XDomainRequests */
I think repurposing the object like that is confusing, while saving very little code compared to properly splitting the data types. We could move all fields except the *_iface ones into a common base struct. XDR could then simply be: `struct { struct xhr xhr; IHTMLXDomainRequest IHTMLXDomainRequest_iface; }`.