Bug #6542 2006-02-22 08:44
afb
_U and _C macros considered harmful
The following macros from C::B src/sdk/globals.h
conflict with /usr/include/ctype.h, on Mac OS X:
// Convenience macros until we update the codebase...
// TODO (mandrav##): Remove the leading underscores from the following macros
#define _U(x) cbC2U(x)
#define _C(x) cbU2C(x)
They are already defined in the system header as:
#define _CTYPE_C 0x00000200L /* Control */
#define _CTYPE_U 0x00008000L /* Upper */
/*
* Backward compatibility
*/
#define _C _CTYPE_C /* Control */
#define _U _CTYPE_U /* Upper */
I believe other BSDs than Darwin have this issue, too.
Perhaps add some #undef's to C::B, in the meantime ?
#undef _U
#define _U(x) cbC2U(x)
#undef _C
#define _C(x) cbU2C(x)
It gives some strange errors in some templates otherwise :-)
"32768 is not a function"
- Category
- Group
- Status
- Closed
- Close date
- 2006-02-22 14:01
- Assigned to
- mandrav
History
Thanks afb.
I 've been wanting to remove them (as the comment says) but kept postponing it.
I 'm currently removing them completely. I 'll commit when I 'm done.
This bug is now fixed in HEAD.
Thank you for reporting it.