> I had to use the following hack to allow this > bit to go through my g++ compiler. > > I'm using RedHat 8.0, so this gives me: > > [dimi@dimi wine.src]$ g++ --version > g++ (GCC) 3.2 20020903 (Red Hat Linux 8.0 3.2-7) > Copyright (C) 2002 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. > There is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A > PARTICULAR PURPOSE. > > Any ideas what's wrong here, and how it can be fixed?
Yes, it seems that GNU C++ 3.2 (unlike GNU C 3.2) doesn't support unnamed structs. Strange. Not that it really matters that much because you could do "magic" with inheritance in C++. See below. > Index: include/winuser.h > =================================================================== > RCS file: /var/cvs/wine/include/winuser.h,v > retrieving revision 1.152 > diff -u -r1.152 winuser.h > --- include/winuser.h 4 Nov 2002 22:47:59 -0000 1.152 > +++ include/winuser.h 17 Nov 2002 01:32:56 -0000 > @@ -2387,13 +2387,13 @@ > > typedef struct tagMONITORINFOEXA > { > - MONITORINFO DUMMYSTRUCTNAME; > + MONITORINFO DUMMYSTRUCTNAMEx; > CHAR szDevice[CCHDEVICENAME]; > } MONITORINFOEXA, *LPMONITORINFOEXA; > > typedef struct tagMONITORINFOEXW > { > - MONITORINFO DUMMYSTRUCTNAME; > + MONITORINFO DUMMYSTRUCTNAMEx; > WCHAR szDevice[CCHDEVICENAME]; > } MONITORINFOEXW, *LPMONITORINFOEXW; This uses inheritance with C++ in the Microsoft SDK. Working on patch. Coming very soon.