On Tue, 27 Oct 2015, Francois Gouget wrote: [...]
That this is needed to compile with the PSDK but not with Wine probably indicates a bug in the Wine headers. What was the compilation error?
..\include\wine/debug.h(334) : error C2039: 'brecVal' : is not a member of 'tagVARIANT'
I found the problem. In debug.h we have V_UNION(v,brecVal).pvRecord and V_UNION(v,brecVal).pRecInfo. This does not work if tagVARIANT is using nameless unions such as with the Visual C++ compiler.
The reason it works in Wine is that __STDC__ is always defined so that Wine code never uses nameless unions for tagVARIANT. So I'm sending a fix for that (adding V_RECORD() and V_RECORDINFO()).
With that fix, are the following defines still needed? If yes, what is the compiler command line and error?
--- a/dlls/oleaut32/tests/typelib.c +++ b/dlls/oleaut32/tests/typelib.c @@ -19,6 +19,9 @@
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
+#define NONAMELESSSTRUCT +#define NONAMELESSUNION