On 5/26/07, <b class="gmail_sendername">Alexandre Julliard</b> <<a href="mailto:julliard@winehq.org">julliard@winehq.org</a>> 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;">
"Evan Stade" <<a href="mailto:estade@gmail.com">estade@gmail.com</a>> writes:<br><br>> I want to write conformance tests for gdiplus and that requires the use of<br>> c++. Even if I were to focus on the gdi+ flat api, the windows SDK headers
<br>> for that have c++ code in them, also eventually when the gdi+ c++ wrappers<br>> are written on top of the flat api then we will need to be able to compile<br>> c++ in the wine environment. What do I have to do to be able to write these
<br>> tests?<br><br>I don't see any need to use C++ for that. All the exported APIs are<br>callable from C code, and the corresponding headers are C compatible<br>too.<br><br>--<br>Alexandre Julliard<br><a href="mailto:julliard@winehq.org">
julliard@winehq.org</a><br></blockquote></div><br>Well the Platform SDK headers use C++. From gdiplus.h:<br><br>...<br> namespace DllExports<br> {<br> #include "GdiplusFlat.h"<br> };<br>...<br><br>
And if you try to just include GdiplusFlat.h (i.e
. only using the gdi+ flat api), you have to include GdiplusGpStubs.h. From GdiplusGpStubs.h:<br><br>...<br>class GpBrush {};<br>class GpTexture : public GpBrush {};<br>...<br><br>So
it would be impossible to compile any conformance test for gdi+ in C
using the platform sdk headers. In my eyes it seems that there are 2
options: edit the platform sdk headers so that they are compatible with
C code (change "class GpFoo {};" to "typedef void GpFoo") or use g++ to
compile. Are you suggesting the former over the latter?
<br><span class="sg"><br>-Evan Stade</span><br>