Rob Shearman wrote:
-static OLEFontImpl* OLEFontImpl_Construct(LPFONTDESC fontDesc); +static OLEFontImpl* OLEFontImpl_Construct(const FONTDESC *fontDesc); static void OLEFontImpl_Destroy(OLEFontImpl* fontDesc); static ULONG WINAPI OLEFontImpl_AddRef(IFont* iface);
Even if the compiler allows this, it does not make sense. Why would a constructor not want to modify the object it is constructing?
If I'm not mistaken, the input parameter points to the template from which it is copying, rather than the object it is constructing, in this case.