the mingw32 guys disabled the OUT/IN/OPTIONAL defines long ago:
/* Pseudo modifiers for parameters
We don't use these unnecessary defines in the w32api headers. Define
them by default since that is what people expect, but allow users
to avoid the pollution. */
#ifndef _NO_W32_PSEUDO_MODIFIERS
#define IN
#define OUT
#ifndef OPTIONAL
#define OPTIONAL
#endif
#endif
i've hit this in a project or two where IN/OUT were used in some local code and by defining them to nothing, the code fails to build
Well, we avoid those IN/OUT/OPTIONAL in prototypes, too.
At some places were are defining them for compatibility, thanks for the patch. I'll fix that on our trunk version the next days.
Cheers,
Kai
Fixed at on trunk revision 1668.
2009-12-19 Kai Tietz <kai.tietz@onevision.com>
PR/2916490
* include/certbcli.h (IN, OUT, OPTIONAL): Protect definition
by _NO_W32_PSEUDO_MODIFIERS guard.
* include/lmcons.h: Likewise.
* include/ntsecapi.h: Likewise.
* include/rpcdce.h: Likewise.
* include/wincrypt.h: Likewise.
* include/windef.h: Likewise.
Cheers,
Kai