Hmm, it has been several weeks since then and I'd like to bump this tiny issue. The source of these errors was within i686-w64-mingw32/include/d3dx9math.inl where some inline functions were using the 'max()' and 'min()' macros that never seemed to get a chance to be defined thanks to the default settings of this build. It could be easily wiped by replacing the file in question with the 'older version' from GCC 4.7.0 prerelease by rubenvb if I didn't miss anything, but since this problematic file seemed to be from the current (2.0.3) release of mingw-w64 CRT, I would curiously wonder if it was just a regression of the CRT source rather than this particular personal build. Any idea?

2012/5/7 klmz <>
You can easily see the problem, by just compiling the one-liner cpp in the attachment which merely #include<d3dx9.h> and getting messages like "error: 'max' was not declared in this scope". The file compiles OK with your 4.7.0-3 build.

And I did the tests all with the w64-mingw32 builds, if that helps.

By "these headers now include the C++ config headers" I suspect and mean the now-broken headers e.g. d3dx9.h must be somehow including the macro-#undef-ers e.g. bits/os_defines.h that #undef's the max/min macros, though I haven't checked for sure. Anyway, I think it should be regarded as a bug rather than a feature to get rid of the annoying os-specific #define's this way, as keeping #undef-ing the min/max macros everywhere in favor of std::min/max is clearly not exciting news for the old good Win API "C" headers.

2012/5/6 Ruben Van Boxem <>
Can you post a small code sample displaying the issue? What do you mean by "these headers now include the C++ config headers"? Do you think there's a naming conflict and the wrong headers are being wrongfully picked up?


Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
Mingw-w64-public mailing list