On 9 Nov 2002, Vincent BĂ©ron wrote: [...]
Because of -DNONAMELESSUNION in Makeprog.rules.in. Now, why is it always set? It comes from this patch (http://www.winehq.com/hypermail/wine-cvs/2001/11/0114.html), applied nearly one year ago.
It is done this way because some versions of gcc/g++ don't support nameless structs. I believe the situation is better with nameless unions and with more recent versions of g++. But for the best compatibility (e.g. with other compilers) it is safer to never use these features, especially in code that we control.