On 5/28/07, <b class="gmail_sendername">Dmitry Timoshkov</b> &lt;<a href="mailto:dmitry@codeweavers.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">dmitry@codeweavers.com</a>&gt; wrote:<div><span class="gmail_quote">
</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
&quot;Evan Stade&quot; &lt;<a href="mailto:estade@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">estade@gmail.com</a>&gt; wrote:<br><br>&gt; Well the Platform SDK headers use C++.&nbsp;&nbsp;From 
gdiplus.h:<br>&gt;<br>&gt; ...<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;namespace DllExports<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;{
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#include &quot;GdiplusFlat.h&quot;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;};<br>&gt; ...<br>&gt;<br>&gt; And if you try to just include GdiplusFlat.h (i.e . only using the gdi+ flat<br>&gt; api), you have to include GdiplusGpStubs.h
. From 
GdiplusGpStubs.h:<br>&gt;<br>&gt; ...<br>&gt; class GpBrush {};<br>&gt; class GpTexture : public GpBrush {};<br>&gt; ...<br>&gt;<br>&gt; So it would be impossible to compile any conformance test for gdi+ in C<br>&gt; using the platform sdk headers.&nbsp;&nbsp;In my eyes it seems that there are 2
<br>&gt; options: edit the platform sdk headers so that they are compatible with C<br>&gt; code (change &quot;class GpFoo {};&quot; to &quot;typedef void GpFoo&quot;) or use g++ to<br>&gt; compile.&nbsp;&nbsp;Are you suggesting the former over the latter?
<br><br>All you need are the API prototypes, and you can get those without including<br>headers that use C++.<br><br>--<br>Dmitry.<br></blockquote></div><br>The API prototypes use types that are defined as C++ classes.&nbsp; For example, one prototype (from 
GdiPlusFlat.h) is
<br><br>GpStatus WINGDIPAPI GdipCloneBrush(GpBrush *brush, GpBrush **cloneBrush);<br><br>And GpBrush is defined as <br><br>class GpBrush {};<br>