I reported this issue as PR misc/15127, and posted once to hackers but get no response at all. In FreeBSD, _T and other two letter macros are defined in ctype.h. Some standard c++ library code use _T as local identifiers. I mean the library that come with egcs-2.95.[12] and 2.96 191110. /usr/include/g++/typemacros.h also defines _T. (in 3.3R, I'm not sure on later versions) So, I feel better to remove these two character defines from ctype.h. This procedure would involve also change the code in src/lib/libc/locale/{ctype,table}.c Substitute _T with _CTYPE_T in ctype.h and #define _T _CTYPE_T in src/lib/libc/locale/{ctype,table}.c would reduce the undocumented global namespace pollution. What do you think of this? Is this worth doing, or you won't change that, or any better way to go? I think that the c++ library should not use _T anyway, and the use of _T is reported to libstdc++-v3 group with PR #19. The usage of _T is not very few and I'm not sure I found all of them. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message